完成命令行后closures程序

我有一个batch file,打开一个.exe程序。 该程序是fileuploader.exe

有上传过程完成命令行时closures此程序的方法吗?

因为程序生成一个输出文件,我需要这个输出另一个命令行操作。

我试过这个:

 start fileuploader.exe filetoupload :loop taskkill /im fileuploader.exe goto loop 

当程序正在运行, taskkill发送closures程序的请求时,它会显示以下消息:

正在上传您要退出吗?

循环这样做直到上传完成, taskkillclosuresFileuploader。 但我不喜欢这个解决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