我有一个batch file,打开一个.exe
程序。 该程序是fileuploader.exe
。
有上传过程完成命令行时closures此程序的方法吗?
因为程序生成一个输出文件,我需要这个输出另一个命令行操作。
我试过这个:
start fileuploader.exe filetoupload :loop taskkill /im fileuploader.exe goto loop
当程序正在运行, taskkill
发送closures程序的请求时,它会显示以下消息:
正在上传您要退出吗?
循环这样做直到上传完成, taskkill
closuresFileuploader。 但我不喜欢这个解决scheme。
有一种方法可以在一定时间后执行任务taskkill
比如每2分钟一次?
有一种方法可以在一定时间后执行任务杀伤 (比如每2分钟一次?)
您可以使用ping命令创建延迟。 使用所需的超时值(毫秒)ping一次不可达地址。 这个例子将在每个taskkill之前等待2分钟。
start fileuploader.exe filetoupload :loop ping 1.1.1.1 -n 1 -w 120000 >NUL taskkill /im fileuploader.exe goto loop
此外,还有这个方法,它给你一个在窗口标题倒计时:
@ECHO off TITLE Initial title SET TITLETEXT=Countdown the uploader :: start of script start fileuploader.exe filetoupload :loop CALL sleepMe 120 taskkill /im fileuploader.exe goto loop :: rest of script GOTO :END :: Function :sleepMe ARG ECHO Pausing... FOR /l %%a in (%~1,-1,1) do (TITLE %TITLETEXT% -- time left %%as&PING.exe -n 2 -w 1 127.0.0.1>nul) EXIT /B 0 :END pause
如果File&Image Uploader在这里 ,那么它可能会在下一个版本中实现,否则ping
解决方案是最好的,没有额外的工具。
在许多计算机上,您将从Windows资源工具包或PowerShell脚本中找到具有嵌入式Start-Sleep
sleep.exe
HTH