如何在Win32上杀死Perl可能不存在的程序?

时间:2010-01-12 21:11:09

标签: perl winapi

我正在寻找一种方法让Perl杀死Win32上的所有firefox.exe进程,如果没有进程则不会出错。我目前正在使用:

system('taskkill /F /IM firefox.exe');

引发了一个很大的“错误:找不到这样的进程”,当firefox不存在时。

3 个答案:

答案 0 :(得分:6)

如果要取消包括错误在内的所有输出,请尝试以下操作:

system('taskkill /F /IM firefox.exe >nul 2>&1');

您可以在此处查看有关命令重定向和管道的更多信息:

http://ss64.com/nt/syntax-redirection.html

答案 1 :(得分:3)

`taskkill /F /IM firefox.exe 2>&1`

答案 2 :(得分:3)

不调用taskkill,您可以使用Perl模块,例如Win32::Process::Listwin32::Process::Kill

另见perldoc -f kill