通过.bat文件打开/关闭应用程序[Windows]

时间:2016-03-16 05:30:28

标签: windows batch-file cmd kill

美好的一天,我有一个运行特定应用程序的.bat文件,然后在5秒后关闭/杀死它。

我现在因为它在应用程序打开时成功打开了应用程序,它将不会执行剩余的命令,除非我手动关闭应用程序。

这是我的代码:

cd "C:\Program Files (x86)\Aspera\Point-to-Point\bin\"
asperascp.exe
sleep 5 
taskkill /IM asperascp.exe /f

我也尝试删除sleep命令。

cd "C:\Program Files (x86)\Aspera\Point-to-Point\bin\"
asperascp.exe
taskkill /IM asperascp.exe /f

但它会有相同的输出,当asperascp.exe启动时它不会执行剩余的命令。

任何提示?

感谢。

3 个答案:

答案 0 :(得分:10)

您可以使用Start /b命令。

@echo off
cd "C:\Program Files (x86)\Aspera\Point-to-Point\bin\"
Start "" /b asperascp.exe 
timeout /T 5 /nobreak >nul
taskkill /IM asperascp.exe /F

答案 1 :(得分:3)

TASKKILL /IM asperascp.exe /F
将使用相同的图像名称杀死所有图像。因此,如果你运行相同的程序两次,例如,第二个程序在第一个程序退出之前启动,第二个程序也会在第一个程序运行taskkill时被杀死。如果执行tasklist,您将看到一些具有相同图像名称但具有不同PID的图像。您必须获取批处理文件启动的过程的PID(我无法想到如何使用CMD执行此操作。)然后您可以使用: TASKKILL /PID 999 /F

答案 2 :(得分:-2)

TASKLIST命令对于获取PID可能有用。