繁体   English   中英

TASKKILL之后进程正在运行

[英]Process running after TASKKILL

该问题与以下所示的脚本有关:

@echo on
:MAIN
start "myname" cmd /c "build\jre\bin\java -jar MainThread.jar"
timeout /t 2 >null
TASKLIST /v /fi "IMAGENAME eq cmd.exe">myfile.txt
TASKKILL /f /fi "IMAGENAME eq cmd.exe" /fi "WINDOWTITLE eq myname"
TASKLIST /v /fi "IMAGENAME eq cmd.exe">myfile2.txt
:exit

当我第一次执行任务列表时,myname被列在TASKLIST中。执行taskkill后,myname进程没有显示在TASKKILL之后执行的TASKLIST中,但是它正在运行。在删除其条目但未终止该进程的过程中。我该如何终止该进程?

已启动的java进程占用了父级cmd窗口名称,但是不早于后者的父级cmd进程被终止。 where没有安装java where使用替代方法提供的证明(如where.exe运行了相当长的一段时间以截取屏幕截图,甚至检查任务管理器)。

测试脚本

@echo on
:MAIN
start "myname" cmd /C where /R c:\ "whistle.*" 
@timeout /t 1 >null
TASKLIST /V /NH /fi "WINDOWTITLE eq myname" /FO "CSV"
TASKLIST /v /NH /fi "IMAGENAME eq Where.exe" /FO "CSV"
TASKKILL /f /fi "IMAGENAME eq cmd.exe" /fi "WINDOWTITLE eq myname"
TASKLIST /V /NH /fi "WINDOWTITLE eq myname" /FO "CSV"
:exit

输出

==> D:\bat\SO\36185868.bat

==> start "myname" cmd /C where /R c:\ "whistle.*"

==> TASKLIST /V /NH /fi "WINDOWTITLE eq myname" /FO "CSV"
"cmd.exe","3340","Console","1","2 240 K","Running","pcn\usern","0:00:00","myname"

==> TASKLIST /v /NH /fi "IMAGENAME eq Where.exe" /FO "CSV"
"where.exe","5188","Console","1","3 184 K","Unknown","pcn\usern","0:00:01","N/A"

==> TASKKILL /f /fi "IMAGENAME eq cmd.exe" /fi "WINDOWTITLE eq myname"
SUCCESS: The process with PID 3340 has been terminated.

==> TASKLIST /V /NH /fi "WINDOWTITLE eq myname" /FO "CSV"
"where.exe","5188","Console","1","3 184 K","Running","pcn\usern","0:00:01","myname"

==>

屏幕截图

任务

谢谢你们的帮助。 我使用TASKKILL / f / t / fi“ IMAGENAME eq cmd.exe” / fi“ WINDOWTITLE eq myname”命令。 / t用于关闭所有子进程,并且关闭了其子进程1的java.exe。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM