将任务列表中的PID传递给任务杀手,通过打开的.dll杀死一个进程

Windows脚本在这里noob。 说我有我需要删除或复制的.dll的名称,我得到的经典“该文件正在使用的另一个进程…”错误。 我知道我可以使用/ m开关运行任务列表并将其传递给dll名称。 然后我可以得到进程的PID,并用taskkill杀死它们。

我怎样才能在batch file中一步到位呢?

提醒:在batch file中,您需要使用双“%%”而不是单个文件

FOR /F "usebackq tokens=2 skip=2" %i IN (`tasklist /m winsta.dll`) DO taskkill /PID %i 

FOR / F“usebackq tokens = 2 skip = 2”%% i IN( TASKLIST /FI "IMAGENAME eq tomcat6.exe" )DO taskkill / F / PID %% i

会自动杀死tomcat进程。

Goyuix,

我似乎无法得到任务列表结果parsing。 FOR / F“usebackq tokens = 2 skip = 2”%i IN('tasklist / m winsta.dll')DO echo%i任务列表命令本身很好,但循环无法识别任务列表的结果。 相反,它似乎是parsingstring。 我可以输出任务列表的结果文件,并与循环parsing,但我想我可能会缺less一些简单的东西。

是的。 简单。 反引号,而不是单引号。