我想显示命令行包含.*git.*
使用的所有进程top
。
我考虑过以下命令:top -p $(pgrep -d',' -f '.*git.*')
但是,上述命令有几个注意事项:
top
只有执行时存在的进程才会包含在top
的输出中(.*git.*
不包含新的进程)。man top
表示最多可以使用该-p
标志指定 20 个进程,这可能还不够。
如何在终端中显示top
当前进程的动态视图?.*git.*
答案1
您可以top
使用“在窗口中过滤”来执行此操作:开始top
,然后按O,然后输入
COMMAND=git
这将过滤进程,匹配该COMMAND
列并仅保留该列中可见值包含的进程git
。
在COMMAND
列上进行过滤时,过滤器适用于当前显示的值 - 正在运行的程序的名称或其完整命令行。这可以通过按c, 或使用参数来切换-c
;状态在top
调用之间被记住。请注意,过滤器仅适用于字段的可见部分;在对COMMAND
列进行过滤时,如果它不完全可见或者不够宽以包含命令行的相关部分,这可能是一个重要的问题。请参阅COMMAND
中的字段说明man top
了解详情。
过滤器是累积的,可以通过按 来清除=。参见第 5e 节man top
了解详情。
据我所知,没有等效的命令行选项。