似乎我遗漏了一些显而易见的东西,但仍然:
ps -f -u myuser --ppid 1
Run Code Online (Sandbox Code Playgroud)
似乎只查看进程的父 pid,并返回父 pid 为 1 的所有进程 - 即使用户不是myuser。
在-u单独工作正常(仅选择处理的myuser):
ps -f -u myuser
Run Code Online (Sandbox Code Playgroud)
我错过了什么?是否有一些内置方法可以按 中的几个条件进行过滤ps?
编辑: 我目前的解决方法:
ps -f -p $(join <(ps h --ppid 1 -o pid | sort) <(ps h -u myuser -o pid | sort))
Run Code Online (Sandbox Code Playgroud)
ric*_*ici 14
ps那样很烦人。幸运的是,有pgrep,它具有类似的选择选项,但要求它们全部匹配,然后输出匹配的 pid。默认情况下,它每行输出一个,但可以要求它使用不同的分隔符,以便它可以与ps:
ps -f -p"$(pgrep -d, -u $USER -P 1)"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5108 次 |
| 最近记录: |