Ps

程序不存在時不產生輸出

  • May 25, 2016

如果以下命令tail在未執行時沒有產生輸出,我會很高興:

ps --no-headers $(pidof tail)

相反,我得到:

 964 pts/2    00:00:01 bash
4393 pts/2    00:00:00 ps

如果您的版本ps支持該-C選項:

ps --no-headers -C tail

如果沒有,ps只有pidof成功才能執行:

pid=$(pidof tail) && ps --no-headers ${pid}

或(對於 Zsh):

pid=$(pidof tail) && ps --no-headers $=pid

(感謝吉爾斯!)。

pidof並且pgrep是確定係統中正在執行的內容的好命令,但不幸的是,兩者在某些作業系統上都不可用。這應該適用於大多數版本的 Unix、BSD 和 Linux:

ps aux | grep tail | grep -v grep

它刪除了 grep 命令本身。

引用自:https://unix.stackexchange.com/questions/285147