zoukankan      html  css  js  c++  java
  • 查看进程id, 父进程id _How do I get the parent process ID of a given child process?

    How to get parent pid from a given children pid?

    I know I can mannully check it under /proc, I am wonder if there is a smart/better way to achieve this in Ubuntu. Note the parent may or may not be killed.

    Thanks

    ------------------------------------------------------------------------------------------------

    Using pstree by command name

    Using pstree you can search by the child process name and get the Process ID (PID) along with the parents, grandparents and any children of the child process:

    $ pstree -hp | grep sleep
               |-cron(763)---cron(795)---sh(839)---display-auto-br(841)---sleep(8414)

    In this case sleep is the child command and it's PID is 8414. It's parent ID is 841 and is called display-auto-brightness. The grandparent is a shell (sh) with a process ID of 839. The great-grandparent is cron with a process ID of 795. The great-great-grandparent is also cron with a process ID of 763.

    If you want to search by Process ID of sleep instead of name you can use:

    $ pstree -hp | grep 14653
               |-cron(763)---cron(795)---sh(839)---display-auto-br(841)---sleep(14653)

    Notice the sleep process ID changed to 14653. The parent (PID 841) sleeps for 1 minute, wakes up for a split second and then starts a new sleep command which gets a new process ID. This is another reason why searching for sleep is easier than searching by process ID.

    This code was taken from: Automatically adjust display brightness based on sunrise and sunset and adapted to this question.


    To see a nested chain all the way back to boot process use the PID instead of name:

    $ pstree -aps 8541
    systemd,1 splash fastboot kaslr
      └─cron,763 -f
          └─cron,795 -f
              └─sh,839 -c    /usr/local/bin/display-auto-brightness
                  └─display-auto-br,841 /usr/local/bin/display-auto-brightness
                      └─sleep,8541 60

    Note: Another minute has passed and the sleep command gets a new PID (8541).

  • 相关阅读:
    Chrome禁用缓存
    国内阿里Maven仓库镜像Maven配置文件Maven仓库速度快
    spring boot 之热部署
    Spring Boot的Maven插件Spring Boot Maven plugin详解
    在Extjs 的 TabPanel在 title标题栏上加按扭button
    Entity Framework 基于Oracle的code first 问题汇总
    面向对象设计原则
    Asp.Net MVC 缓存设计
    Asp.Net MVC 身份认证
    Asp.Net MVC 请求原理分析
  • 原文地址:https://www.cnblogs.com/oxspirt/p/9303109.html
Copyright © 2011-2022 走看看