• tasklist、taskkill命令使用


    tasklist、taskkill命令使用

    在Windows XP中新增了两个命令行工具“tasklist、taskkill”。通过“Ctrl+Alt+Del”组合键,打开“任务管理器”就可以查看到本机完整的进程列表,而且可以通过手工定制进程列表的方式获的更多的进程信息,如会话ID、用户名等,遗憾的是,我们查看不到这些进程到底提供了哪些系统服务。而tasklist、taskkill两个工具就能实现上面所说的功能。

      “Tasklist”命令用来显示运行在本地或远程计算机上的所有进程的命令行工具,带有多个执行参数。它的格式为:Tasklist [/S system [/U username [/P [password]]]] [/M [module] | /SVC | /V] [/FI filter] [/FO format] [/NH]

      其中的参数含义如下:

      /S     system           指定连接到的远程系统。
      /U     [domain]user    指定使用哪个用户执行这个命令。
      /P     [password]       为指定的用户指定密码。
      /M     [module]         列出调用指定的 DLL 模块的所有进程。如果没有指定模块名,显示每个进程加载的所有模块。
      /SVC                    显示每个进程中的服务。
      /V                      指定要显示详述信息。
      /FI    filter           显示一系列符合筛选器指定的进程。
      /FO    format           指定输出格式,有效值: "TABLE"、"LIST"、"CSV"。
      /NH                     指定栏标头不应该在输出中显示。只对 "TABLE" 和 "CSV" 格式有效。

      “Tasklist”命令相关实例

      1、使用“Tasklist”命令查看本机进程
       在DOS命令提示符下输入:“tasklist”命令,就可显示本机的所有进程。本机的显示结果由五部分组成:图像名(进程名)、PID、会话名、会话#、内存使用。

      2、查看远程系统的进程
       在命令提示符下输入:“tasklist  /s  218.22.123.26  /u  jtdd  /p  12345678”(不包括引号)。其中/s参数后的“218.22.123.26”指要查看的远程系统的IP地址,/u后的“jtdd”指tasklist命令使用的用户帐号,它是远程系统上的一个合法帐号,/p后的“12345678”指jtdd帐号的密码。这样,通过上面的命令,我们就可以查看到远程系统的进程了。
      小提示:使用tasklist命令查看远程系统的进程时,需要远程机器的RPC 服务器的支持,否则,该命令就不能正常使用。

      3、查看系统进程提供的服务
      tasklist命令不但可以查看系统进程,而且还可以查看每个进程提供的服务。如查看本机的进程“SVCHOST.EXE”提供的服务,在命令提示符下输入:“tasklist  /svc”命令即可,你会惊奇的发现,有四个“SVCHOST.EXE”进程,原来有二十几项服务使用这个进程,对于远程系统来说,查看系统服务也很简单,使用“tasklist  /s  218.22.123.26  /u  jtdd  /p  12345678  /svc”命令,就可以查看IP地址为“218.22.123.26”的远程系统进程所提供的服务。

      4、查看调用DLL模块文件的进程列表
      例如,我们要查看本地系统中哪些进程调用了“shell32.dll” DLL模块文件。在命令提示符下输入: tasklist  /m  shell32.dll 这时系统将显示调用进程列表。 

      5、使用筛选器查找指定的进程 
      在命令提示符下输入:“TASKLIST   /FI    "USERNAME ne NT AUTHORITYSYSTEM"     /FI "STATUS eq running“
      这样就列出了系统中正在运行的非“SYSTEM“状态的所有进程。其中“/FI“为筛选器参数,” ne“和”eq“为关系运算符”不相等“和”相等。

      谈到“Tasklist”命令,就不得不提及它的孪生兄弟“taskkill”命令,顾名思义,它是用来杀死进程的。
      如要杀死本机的“notepad.exe”进程。首先,使用Tasklist查找它的PID,系统显示本机“notepad.exe”进程的PID值为“1132“,然后运行“taskkill  /pid 1132”即可,或者运行 “taskkill  /IM  notepad.exe”也可,其中” /pid “参数后面跟要终止进程的PID值,“/IM“参数后面为进程的图像名。

      “Tasklist”命令的用法还有很多,由于篇幅关系,就不详细介绍了,有兴趣的朋友可以参考有关技术资料,进行深入研究。这两个命令在日常的网络维护中,是非常有帮助的,可以方便我们有效的进行网络维护。

      tasklist是显示当前system正在运行的进程,通过不同的参数可以达到不同的效果,最基本的用处就是当机子中毒后,任务管理器可能打不开,这时就可以通过tasklist查看到底是那个进程在捣鬼,但是你要想删除,终止该进程,必须用到和tasklist密切相关的另外一个命令----taskkill。

    具体情况如下:
    ==================================================================
      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 AUTHORITYSYSTEM" /IM notepad.exe
        TASKKILL /S system /U domainusername /FI "USERNAME ne NT*" /IM *
        TASKKILL /S system /U username /P password /FI "IMAGENAME eq note*"
    基本的用法就是:Taskkill  /pid ****(pid号)
    至于eq,ne,ge,le,gt,lt,是等于,不等于,不小于,不大于,大于,小于意思,主要是用来终止一组进程的,不过这个参数可以通过多组taskkill 来实现。
    /F是强制命令。

    ======================= End

  • 相关阅读:
    微信小程序 数据绑定方式
    wxss与rpx
    Ubuntu 编译安装 Xdebug
    PHP运算符优先级
    有了art-template,如有神助
    laydate控制之前的日期不可选择
    label和span的区别
    phpredis基本操作
    FILE,id不一致
    双层保障,年龄的输入
  • 原文地址:https://www.cnblogs.com/lsgxeva/p/11263706.html
Copyright © 2020-2023  润新知