# Windows下该如何批量杀死进程

- Link: https://www.xuepaijie.com/html/skill/coup/769.html
- Published: 2017-01-20T16:25:36+08:00
- Author: Admin

在windows 下，最常使用的结束进程的方法就是打开任务管理器，找到相应的进程， 选择后
点击 “结束进程” 按钮。有时候查看任务管理器，发现启动了一堆相同的进程，并且有时杀
了这个，又多了那个。使用命令taskkill可将这些进程一下子全部杀光，而免掉了一个一个
地终止。

    ```html;
    在命令行下输入  taskkill /?  就能看到这个命令的一些介绍了。
    命令语法： 
    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*"
    ```

举几个例子来说明下这个命令的使用：

    ```html;
    taskkill /PID 827  
    结束进程ID 是827 的进程。

    taskkill /F /IM notepad.exe  
    强制结束所有的文本编辑器进程

    taskkill /F /FI "USERNAME eq Quinn"  
    强制结束用户名是Quinn 的所有进程
    ```
