无法通过taskkill杀死程序

时间:2014-01-26 20:45:22

标签: batch-file

我使用Tecplot来打开其脚本文件(* mcr)来进行可视化。在我将批处理代码写入第一个打开tecplot以启动* mcr文件然后将其删除后,我发现代码无法终止程序。批处理文件中的代码如下:

cd .\Re100\17\
cd .\0.001
tec360 extract.mcr
ping 192.0.2.2 -n 1 -w 100000 
taskkill /F /IM tec360.exe
cd ..\
cd .\0.005
extract.mcr
ping 192.0.2.2 -n 1 -w 100000 
taskkill /F /IM tec360.exe

但是,如果我手动关闭Tecplot,则批处理文件可以正常工作。对此的任何帮助将受到高度赞赏。

2 个答案:

答案 0 :(得分:0)

尝试查看此网站http://technet.microsoft.com/en-us/library/bb491009.aspx它将向您展示如何使用任务kill命令。

答案 1 :(得分:0)

您只需要在宏文件“ extract.mcr”的末尾添加一个$!QUIT命令,该命令将在宏完成后关闭tecplot,这样您的tecplot GUI将自行关闭。宏文件应该看起来像这样

#!MC 1410
# some other macro commands .....
$!QUIT

根据我的经验,您实际上并不需要加载tecplot的GUI,可以在批处理模式下运行宏,这将很快,而且也不需要$!Quit命令。以批处理模式运行,您的批处理文件如下所示:

cd .\Re100\17\0.001
tec360 -b extract.mcr
cd ..\0.005
tec360 -b extract.mcr

另外要注意的是,如果您具有相同的文件名,即extract.mcr和要在其中运行的许多文件夹,那么与其在Windows中像以前那样对浴进行硬编码,就是这样, >

SET my_dir="Re100\17\0.001" "..\0.005"
FOR %%A IN (%my_dir%) DO (
    cd %%A
    tec360 -b extract.mcr
)

现在您可以在第一行中添加任意数量的文件夹,并用空格分隔路径,例如 SET my_dir =“路径1”“路径_2”“路径3”“路径4” 等等。