有关批处理的问题~~

来源:百度知道 编辑:UC知道 时间:2024/06/16 03:42:04
写了个批处理,意思是想在关闭某个进程后关闭计算机,
@echo off
ntsd -c q -p PID
shutdown -s -t 0
其中PID的地方是进程对应的PID,但是每次该进程的PID都不一样~~
这个问题怎样解决?
以上问题只能针对该进程存在的条件下关机,如该进程不运行的情况下如何跳过第一个命令?

不一定要用ntsd的,taskkill也可以作用差不多,格式:
taskkill /fi "IMAGENAME eq 进程名" /f
如taskkill /fi "IMAGENAME eq TIMPlatform.exe" /f

ntsd -c q -p PID
不用这个命令 taskkill /im /f
im后面跟图像名

假如你所说的进程为:smss.exe
那么命令如下:

tasklist | find /i "smss.exe" >nul 2>nul||shutdown -s -f -t 0
或者

@echo off
for /f %%i in ('tasklist /nh') do (
if %%i==smss.exe goto eof
)
shutdown -s -f -t 10

tskill 进程名 (不要扩展名)