• 9.2-3 pstree & pgrep


    9.2 pstree:显示进程状态树

        pstree命令以树形结构显示进程和进程之间的关系。
        如果不指定进程的PID号,或者不指定用户名称,则会以init进程为根进程,显示系统的所有进程信息;若指定用户或PID,则将以用户或PID为根进程,显示用户或PID对应的所有进程。
     
        pstree [选项] [进程号/用户]

    参数选项及说明

    -a    显示启动每个进程对应的完整指令,包含启动进程的路径、参数等
    -c    不精简显示进程信息,即显示的进程中包含子进程和父进程
    -h    对现在执行的程序进行特别标注
    -n    根据进程PID号来排序输出,默认是以程序名称排序输出的
    -p    显示进程的PID
    -u    显示进程对应的用户名称

    显示进程树 

    [root@cs6 ~]# pstree
    init─┬─auditd───{auditd}
         ├─crond
         ├─master─┬─pickup
         │        └─qmgr
         ├─6*[mingetty]
         ├─rsyslogd───3*[{rsyslogd}]
         ├─sshd───sshd───bash───pstree
         └─udevd───2*[udevd]

    显示指定用户的进程

    [root@doit ~]# pstree mysql    #<==mysql是系统的用户名。
    mysqld_safe───mysqld───40*[{mysqld}]    #<==该输出显示了mysql用户下对应的进程为mysqld,并且msqyld 进程拥有40个线程
     
    [root@doit ~]# pstree -c -p mysql    #<=使用-c选项显示所有进程,包含子进程和父进程,使用-p选项显示进程的进程号。
    mysqld_safe(3560)───mysqld(3782)─┬─{mysqld}(3855)
                                     ├─{mysqld}(3856)
                                     ├─{mysqld}(3857)
                                     ├─{mysqld}(3858)
                                     ├─{mysqld}(3859)
                                     ├─{mysqld}(3860)
                                     ├─{mysqld}(3861)
                                     ├─{mysqld}(3862)
                                     ├─{mysqld}(3863)
                                     ├─{mysqld}(3864)
                                     ├─{mysqld}(3868)

    显示进程所属的用户

    [root@doit ~]# pstree -u
    systemd─┬─NetworkManager─┬─dhclient
            │                └─2*[{NetworkManager}]
            ├─acpid
            ├─agetty
            ├─auditd───{auditd}
            ├─chronyd(chrony)
            ├─crond
            ├─dbus-daemon(dbus)
            ├─haveged
            ├─httpd───7*[httpd(apache)]
            ├─irqbalance
            ├─master─┬─pickup(postfix)
            │        └─qmgr(postfix)
            ├─mysqld_safe(mysql)───mysqld───40*[{mysqld}]

    pgrep:查找匹配条件的进程

    pgrep命令可以查找匹配条件的进程号。 
     
    -u    显示指定用户的所有进程号 
    [root@cs6 ~]# pgrep crond    #<==pgrep 命令可以看作ps命令和grep命合的结合,pgrep命令指定过滤crond字段,获取到crond进程的进程号。
    1448

    显示指定用户的所有进程号

    [root@cs6 ~]# pgrep -u root
    1
    2
    3
    4
    5
    6
    ...
     
     
     
  • 相关阅读:
    一行code实现ADO.NET查询结果映射至实体对象。
    傻瓜式使用AutoFac
    Asp.Net MVC中捕捉错误路由并设置默认Not Found页面。
    asp.net MVC中实现调取web api
    JavaScript_11_验证
    JavaScript_10_错误
    JavaScript_9_循环
    JavaScript_8_比较,条件语句
    JavaScript_7_运算符
    JavaScript_6_函数
  • 原文地址:https://www.cnblogs.com/fadewalk/p/10844960.html
Copyright © 2020-2023  润新知