• 【进程/作业管理】篇章一:Linux进程及其管理(进程管理类工具)----pstree、ps、top、htop、kill、(killall、pkill、pgrep、pidof)


    主要讲解进程管理类命令及工具的使用:pstree、ps、top、htop、kill、(killall、pkill、pgrep、pidof)



    pstree 以树状图的方式展现进程之间的派生关系,显示效果比较直观 静态显示 
    pgrep 进程显示过滤,用法和参数基本一样 静~~~
    pidof 根据进程获取其ID名 静~~~
    kill 用于向进程发送信号,以实现对进程的管理 静~~~
    killall 杀死指定进程 静~~~
    pkill 和killall命令用法基本上差不多 静~~~
    ps 用于报告当前系统的进程状态,实际是将/proc/目录下的各个进程的相关信息转换为我们易读的模式展现出来;可以搭配kill指令随时中断、删除不必要的程序 静~~~
    top 实时动态地查看系统的整体运行情况,但是htop更加易用 动态显示
    htop 实时动态地查看系统的整体运行情况,htop更加易用 动态显示


    pstree命令详解:

      <---以树状图的方式展现进程之间的派生关系,显示效果比较直观--->

    这个命令简单没有什么说的,语法格式:

      pstree [-a] [-c] [-h|-Hpid] [-l] [-n] [-p] [-u] [-Z] [-A|-G|-U] [pid|user]

      pstree -V

    options:
    -a:显示每个程序的完整指令,包含路径,参数或是常驻服务的标示
    -l:采用长列格式显示树状图 -p:显示进程的PID号 -u:显示用户名称 -V:显示版本信息 [pid|user]:根据pid或者user信息来显示我们需要的信息

    示例1:以树状图显示进程还显示进程号和进程ID

      # pstree -p

    示例2:显示所有进程的所有详细信息

      # pstree -a

    示例3:以树状图显示进程PID为<pid>的进程以及子孙进程

      # pstree <pid>

    示例4:以树状图显示进程PID为<pid>的进程以及子孙进程,同时显示每个进程的PID

      # pstree -p <pid>

    1 [root@test1 ~]# pstree -p 3338
    2 sshd(3338)───bash(3342)─┬─cat(3430)
    3                         └─pstree(4757)
    4 [root@test1 ~]# pstree -p 1520
    5 sshd(1520)───sshd(3338)───bash(3342)─┬─cat(3430)
    6                                      └─pstree(4758)
    7 [root@test1 ~]# pstree 1520
    8 sshd───sshd───bash─┬─cat
    9                    └─pstree
    View Code


     pgrep命令详解

      <---进程显示过滤,--->

      语法格式:pgrep [options] pattern  

    options:
    -u uid:effective user 有效用户 -U uid:read user 世纪用户 -t TERMINAL:与指定的终端相关的进程; -l:显示进程名; -a:显示完整格式的进程名; -P pid:显示此进程的子进程;
    pattern:
      使用全称
      也可以使用命令行glob通配和grep的pattern(模式)

    pgrep查找的是程序名,不包括其参数

    示例1:查看指定进程的信息(注意:该命令默认只显示PID)

      # pgrep ssh

    示例2:同时显示进程名和PID

      #pgrep -l ssh

    示例3:当匹配多个进程时,显示进程号最小的那个

      # pgrep -ol ssh

    示例3:当匹配多个进程时,显示进程号最大的那个

      # pgrep -nl ssh



     pidof命令详解:

      <--根据进程名,获取其ID名-->

      语法格式:pidof [-s] [-c] [-x] [-m] [-o omitpid] [-o omitpid..] program [program..]

    options:
    -s:仅返回一个进程号; -c:仅显示具有相同“root”目录的进程; -x:显示由脚本开启的进程; -o:指定不显示的进程ID。
     program:
    指定查找的进程名称

    示例:

    [root@test1 ~]# pidof httpd
    4995 4994 4993 4992 4991 4990 4989 4988 4986
    [root@test1 ~]# pidof httpd -s
    4995
    [root@test1 ~]# pidof httpd -c
    4995 4994 4993 4992 4991 4990 4989 4988 4986
    [root@test1 ~]# pidof httpd -x
    4995 4994 4993 4992 4991 4990 4989 4988 4986
    [root@test1 ~]# pidof httpd -o
    pidof: invalid options on command line!
    
    [root@test1 ~]# 
    View Code


     kill命令详解:

      <---用于向进程发送信号,以实现对进程的管理--->

      语法格式:kill  [-s signal|-SIGNAL]  pid...

           kill -l [signal]

    命令的使用方法直接看命令总结篇:https://www.cnblogs.com/l75790/articles/9192657.html



    killall命令详解:

      <---杀死指定进程--->

      命令格式:killall[参数][进程名]

    备注:Linux系统中的killall命令用于杀死指定名字的进程(kill processes by name)。我们可以使用kill命令杀死指定进程PID的进程,如果要找到我们需要杀死的进程,我们还需要在之前使用ps等命令再配合grep来查找进程,而killall把这两个过程合二为一,是一个很好用的命令。

    options:
      -Z 只杀死拥有scontext 的进程
      -e 要求匹配进程名称
      -I 忽略小写
      -g 杀死进程组而不是进程
      -i 交互模式,杀死进程前先询问用户
      -l 列出所有的已知信号名称
      -q 不输出警告信息
      -s 发送指定的信号
      -v 报告信号是否成功发送
      -w 等待进程死亡
      --help 显示帮助信息
      --version 显示版本显示

    示例:杀死所有同名进程

      # killall -9 httpd

      # kill -9 $(ps -ef | grep httpd)  和上面的killall命令功效一样



     pkill命令:

      <---pkill 和killall 应用方法差不多,也是直接杀死运行中的程式;如果你想杀掉单个进程,请用kill来杀掉--->
      语法:pkill    正在运行的程式名



    ps命令详解:

      <---用于报告当前系统的进程状态,实际是将/proc/目录下的各个进程的相关信息转换为我们易读的模式展现出来;可以搭配kill指令随时中断、删除不必要的程序--->

       语法格式: ps [options]

      ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。

      要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而 ps 命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等。总之大部分信息都是可以通过执行该命令得到的。

      注意:ps 为我们提供了进程的一次性的查看,且是创建的当前进程的快照(静态查看),它所提供的查看结果并不动态连续的;如果想对进程时间监控,应该用 top 工具

      命令详解链接:https://www.cnblogs.com/l75790/articles/9192863.html



    top命令详解

      <--- 实时动态地查看系统的整体运行情况,但是htop更加易用--->

    命令详解链接:https://www.cnblogs.com/l75790/articles/9196905.html

    uptime命令显示的是第一行任务队列信息



    htop命令详解:

      <---实时动态地查看系统的整体运行情况,htop更加易用--->

     命令详解链接:https://www.cnblogs.com/l75790/articles/9196909.html

  • 相关阅读:
    [易学原创作品]QQ/MSN实现原理: C# UDP穿越NAT,UDP打洞,UDP Hole Punching,P2P
    工作流设计
    jquery 固定行列可编辑表格jfixed
    oracle 数据库实体生成工具
    c#做的查看sybase数据库表
    简单实用ORM框架
    Js 弹出框 返回值的两种常用方法
    数据结构 Jimmy
    js中的对象方法中this指向问题
    js中构造函数中this指向问题
  • 原文地址:https://www.cnblogs.com/l75790/p/9191931.html
Copyright © 2020-2023  润新知