Bash如何使
如何使top
只顯示一組匹配特定模式的程序?
我想顯示命令行包含
.*git.*
using的所有程序top
。我考慮過以下命令:
top -p $(pgrep -d',' -f '.*git.*')
但是,上述命令有幾個注意事項:
- 只有在執行時存在的程序
top
才會包含在top
的輸出.*git.*
中(不包括 new )。man top
表示最多可以使用該-p
標誌指定 20 個程序,這可能還不夠。如何在終端中顯示目前程序的動態
top
視圖?.*git.*
您可以
top
使用“在視窗中過濾”來執行此操作:開始top
,然後按O
,然後輸入COMMAND=git
這將過濾程序,匹配
COMMAND
列並僅保留該列中可見值包含的程序git
。在
COMMAND
列上過濾時,過濾器適用於目前顯示的值 - 正在執行的程序的名稱或其完整的命令行。這可以通過按c
或使用-c
參數來切換;top
在呼叫之間記住狀態。請注意,過濾器僅適用於欄位的可見部分;如果在列上過濾時COMMAND
,如果它不是完全可見或者它不夠寬以包含命令行的相關部分,這可能是一個重要的問題。有關詳細資訊,請參閱中的COMMAND
欄位說明man top
。過濾器是累積的,可以通過按 清除
=
。詳見第 5e 節man top
。據我所知,沒有等效的命令行選項。