Limit the output of the TOP command to a specific process name

后端 未结 17 2644
臣服心动
臣服心动 2020-12-12 09:48

If you call the top command, you get all the running processes. But how can I limit the output only to a certain process name like \"java\"?

I\'ve

17条回答
  •  不思量自难忘°
    2020-12-12 10:03

    I prefer the following so I can still use top interactively without having to look up the pids each time I run it:

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

    Of course if the processes change you'll have to re-run the command.

    Explanation:

    • pgrep process-name returns a list of process ids which are separated by newlines
    • tr "\\n" "," translates these newlines into commas, because top wants a comma-separated list of process ids
    • sed is a stream editor, and sed 's/,$//' is used here to remove the trailing comma

提交回复
热议问题