macos - 将 TOP 命令的输出限制为特定进程名称

标签 macos unix command-line top-command

如果调用 top 命令,您将获得所有正在运行的进程。但是我如何限制仅将输出限制为某个进程名称,例如“java”

我已经尝试过这个 顶部 -l 2 | grep java 但通过这种方式,您只能获得快照,而不能获得持续更新的列表。和top -l 0 | grep java不太清楚。

最佳答案

我更喜欢以下内容,这样我仍然可以交互地使用 top,而不必每次运行时查找 pid:

top -p `pgrep process-name | tr "\\n" "," | sed 's/,$//'`

当然,如果进程发生变化,您将必须重新运行命令。

说明:

  • pgrep process-name 返回以换行符分隔的进程 ID 列表
  • tr "\\n""," 将这些换行符转换为逗号,因为 top 需要一个以逗号分隔的进程 ID 列表
  • sed 是一个流编辑器,sed 's/,$//' 用于删除尾随逗号

关于macos - 将 TOP 命令的输出限制为特定进程名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3727793/

相关文章:

objective-c - Cocoa:隐藏其他应用程序和自身

mysql - Mac OSX MySQL 更新存储过程

objective-c - Objective-c 中的 pHash(图像哈希)不起作用

macos - 用于获取 DMG 的首选 block 大小的 API

java - JMenuItem 没有被键盘回车键激活

c - 扫描输入的所有字符,直到看到制表符

service - 命令行重新启动 Visual Studio Team Foundation Server 2012 生成服务?

macos - Sublime Text : How to set up begining of line/end of line shortcuts to match the shell?

linux - 引号取消 bash 中的命令传递给变量

linux - 命令 'md5sum' 最后没有 '-' token