htop / top 在命令行上指定进程名称过滤器 - 在程序启动时?

sda*_*aau 6 top htop

我在 Ubuntu 18.04 上。我已经知道我可以开始htop,然后按 F4 进行过滤,然后键入或粘贴进程名称搜索查询(例如,gphoto2用于查找gvfs-gphoto2-volume-monitor.service),然后 htop 过滤显示的进程:如果没有这样的进程,它什么都不显示,如果它稍后开始,则htop显示它。

现在,我想htop从命令行开始过滤,例如:

htop --filter="gphoto2"
Run Code Online (Sandbox Code Playgroud)

...并获得与按 F4 并在终端 UI 中键入完全相同的行为。如果将命令集成到tmux会话中,这将非常有用。

我浏览了man htop,但不幸的是我看不到这样的命令行/选项。我见过的最接近的是-p,如如何仅显示*不*匹配过滤器的进程中所述?

就像是

htop -p "$(pgrep -vfd, 'java|python')"
Run Code Online (Sandbox Code Playgroud)

这有一个明显的缺点是不考虑 htop 开始运行后启动的进程

那么,有没有办法在启动时在命令行上设置进程名称过滤,以便它考虑新杀死或产生的进程(就像在htops 终端 UI 中按 F4 一样)- for htop, or top,或任何其他类似程序?

Ist*_*115 7

嗯,现在是 2021 年 3 月 25日,我在 Arch 下运行 htop 版本 3.0.5 --filter test-F test并且一切对我来说都很好。这包含在手册页中:--filter="test"-F="test"

COMMAND-LINE OPTIONS
[...]
       -F --filter=FILTER
              Filter processes by command
Run Code Online (Sandbox Code Playgroud)


小智 2

我也去寻找这个选项,但它不存在。我决定(使用您的搜索词):

\# ps -aux |grep "[0-9] gphoto2"
Run Code Online (Sandbox Code Playgroud)