Title 进程结束批处理
Color 02
echo --------------------------------》进程结束批处理《--------------------------
:start
echo ____________________________________________________
echo 1. 刷新进程列表
echo 2. 结束进程
echo 3. 强制结束进程
echo 4. 退出
echo ____________________________________________________
set /P choice=请选择:
if %choice%==1 goto show_list
if %choice%==2 goto task_kill
if %choice%==3 goto force_kill
if %choice%==4 goto end
:end
exit
:force_kill
echo ----------------------------------------------------------------------------
SET /P Var=请输入你需要强制结束进程的PID码:
taskkill /f /im HJT212_Protocol_WinServer.exe /F
pause
echo ----------------------------------------------------------------------------
goto start
:show_list
echo ----------------------------------------------------------------------------
tasklist
echo ----------------------------------------------------------------------------
goto start
:task_kill
echo ---------------------------------------------------------------------------
SET /P Var=请输入你需要结束进程的PID码:
taskkill /f /im HJT212_Protocol_WinServer.exe
pause
echo ---------------------------------------------------------------------------
goto start
当任务管理器在禁用的情况下,会遇到进程关闭不方便的情况,也有很多的软件可以提供进程管理的服务,比如说冰刃,由于学习了一点批处理的知识,所以打算自己写一个结束进程的批处理。 最后的成果就如下了,下面是全部的代码(====之间): =========================================================== @echo off Title 进程结束批处理 Color 02 echo --------------------------------》进程结束批处理《-------------------------- :start echo ____________________________________________________ echo 1. 刷新进程列表 echo 2. 结束进程 echo 3. 强制结束进程 echo 4. 退出 echo ____________________________________________________ set /P choice=请选择: if %choice%==1 goto show_list if %choice%==2 goto task_kill if %choice%==3 goto force_kill if %choice%==4 goto end :end exit :force_kill echo ---------------------------------------------------------------------------- SET /P Var=请输入你需要强制结束进程的PID码: taskkill /PID %Var% /F pause echo ---------------------------------------------------------------------------- goto start :show_list echo ---------------------------------------------------------------------------- tasklist echo ---------------------------------------------------------------------------- goto start :task_kill echo --------------------------------------------------------------------------- SET /P Var=请输入你需要结束进程的PID码: taskkill /PID %Var% pause echo --------------------------------------------------------------------------- goto start =========================================================== 附件里是编译成exe后压缩的文件,原理是根据进程的PID码结束进程。 使用方法先输入1,查看进程列表,然后选择2或3,输入要结束进程的PID码,回车结束,部分系统保护进程无法结束,winxp下测试有效。 PS:taskill命令也可以根据进程名来结束进程。 帮助如下: TASKKILL [/S system [/U username [/P [password]]]] { [/FI filter] [/PID processid | /IM imagename] } [/F] [/T] 描述: 这个命令行工具可用来结束至少一个进程。 可以根据进程 id 或图像名来结束进程。 参数列表: /S system 指定要连接到的远程系统。 /U [domain\\]user 指定应该在哪个用户上下文 执行这个命令。 /P [password] 为提供的用户上下文指定 密码。如果忽略,提示输入。 /F 指定要强行终止 进程。 /FI filter 指定筛选进或筛选出查询的 的任务。 /PID process id 指定要终止的进程的 PID。 /IM image name 指定要终止的进程的 图像名。通配符 \'*\' 可用来指定所有图像名。 /T Tree kill: 终止指定的进程 和任何由此启动的子进程。 /? 显示帮助/用法。 筛选器: 筛选器名 有效运算符 有效值 ----------- --------------- -------------- STATUS eq, ne 运行 | 没有响应 IMAGENAME eq, ne 图像名 PID eq, ne, gt, lt, ge, le PID 值 SESSION eq, ne, gt, lt, ge, le 会话编号 CPUTIME eq, ne, gt, lt, ge, le CPU 时间,格式为 hh:mm:ss。 hh - 时, mm - 钟,ss - 秒 MEMUSAGE eq, ne, gt, lt, ge, le 内存使用,单位为 KB USERNAME eq, ne 用户名,格式为 [domain\\]user MODULES eq, ne DLL 名 SERVICES eq, ne 服务名 WINDOWTITLE eq, ne 窗口标题 注意: 只有带有筛选器的情况下,才能跟 /IM 切换使用通配符 \'*\'。 注意: 远程进程总是要强行终止, 不管是否指定了 /F 选项。 例如: TASKKILL /S system /F /IM notepad.exe /T TASKKILL /PID 1230 /PID 1241 /PID 1253 /T TASKKILL /F /IM notepad.exe /IM mspaint.exe TASKKILL /F /FI \"PID ge 1000\" /FI \"WINDOWTITLE ne untitle*\" TASKKILL /F /FI \"USERNAME eq NT AUTHORITY\\SYSTEM\" /IM notepad.exe TASKKILL /S system /U domain\\username /FI \"USERNAME ne NT*\" /IM * TASKKILL /S system /U username /P password /FI \"IMAGENAME eq note*\" |