从具有cmd退出的cmd启动的退出进程

时间:2014-10-04 14:40:57

标签: process cmd

我编写了一个启动cmd窗口的脚本。 Cmd窗口进一步启动了几个进程。我想要的是,在手动关闭cmd窗口或使用exit命令时,通过cmd启动的所有进程也会被杀死。

1 个答案:

答案 0 :(得分:0)

从技术上讲,无法更改exit命令的工作方式。你可以做的是通过这样的方式制作你自己的自定义启动和退出命令:

启动命令批处理文件:(上下文为start2 program.exe

start "" "%1"
if exist onExit.txt echo %1>> onExit.txt
if not exist onExit.txt echo %1> onExit.txt

将其保存为start2.bat

退出命令BatchFile :(上下文只是Exit2

for /F "tokens=*" %%A in  (onExit.txt) do  (taskkill /f /im "%%A"
exit

将其保存为Exit2.bat


这些脚本所做的是跟踪您使用自定义命令start2开始的每个程序,然后在自定义出口上taskkill跟踪它们。您可以将这些文件放在批处理文件的同一目录中,或者甚至可以让批处理文件使用echo file contents> file.batecho more file contents>> file.bat创建这些文件。如果不在system32中放置实际的cmd可执行文件,这是你可能做的最好的,我肯定不会推荐,因为很多其他程序都使用它。希望这有助于