Ps
如何通過規範路徑(帶參數)計算某個程序的實例數?
假設我執行以下命令:
sleep 500 /bin/sleep 500 sleep 30
我感興趣的是,如何使用某些參數計算睡眠程序的實例數(在這種情況下,唯一的參數是
500
)。所以在上面的例子中,如果我計算 的實例數
/bin/sleep 500
,它應該返回 2。我試過這個:
pgrep -xfc '/bin/sleep 500'
,但由於它與括號中的參數完全匹配,sleep 500
所以不計算在內。
在您的範例中,您可以使用:
pgrep -fc 'sleep 500'
它同時匹配
/bin/sleep 500
和sleep 500
。或者,如果您想更精確:
pgrep -fc 'sleep 500$'
在 GNU 系統上:
$ ps --no-header -C sleep -o args | grep -Ec ' 500( |$)' 2