2013-03-17 62 views
0

我有幾個運行某個進程的實例,我想確定最後一個進程的進程ID。 到目前爲止,我來到這個代碼:獲取某個進程上次啓動的實例的pid

ps -aef | grep myProcess | grep -v grep | awk -F" " '{print $2}' | 
while read line; do 
    echo $line 
done 

這讓我myProcess的所有進程ID。不知何故,我需要比較這個pid的運行時間,並找出運行時間最短的那個。但我不知道該怎麼做...

+0

謝謝了很多... pgrep只是在一行代碼中完成這項工作:) – 2013-03-17 15:47:40

回答

3

更簡單的方法是使用pgrep及其-n, --newest開關。

只選擇最新的(最近開始的)匹配的 進程。

另外,如果你不想使用pgrep,您可以使用ps和排序開始時間:

ps -ef kbsdstart 
1

使用pgrep。它有一個-n(最新)選項。所以試試吧

pgrep -n myProcess