我使用這個命令來獲得另一個命令的進程ID:ps aux | grep的返回PID爲自己太
ps aux | grep 7000.conf | awk '{print $2}'
這將返回兩個PID:
7731
22125
我只想要第一個。第二個是上述命令中的grep
的PID。在此先感謝任何知道如何修改上述命令以返回第一個pid的人。
p.s.開到一個新的命令,做同樣的事情
我使用這個命令來獲得另一個命令的進程ID:ps aux | grep的返回PID爲自己太
ps aux | grep 7000.conf | awk '{print $2}'
這將返回兩個PID:
7731
22125
我只想要第一個。第二個是上述命令中的grep
的PID。在此先感謝任何知道如何修改上述命令以返回第一個pid的人。
p.s.開到一個新的命令,做同樣的事情
在這種特殊情況下,逃避.
什麼,我認爲它是爲了做應該工作:
ps aux | grep '7000\.conf' | awk '{print $2}'
另外,排除grep
:
ps aux | grep 7000.conf | grep -v grep | awk '{print $2}'
ps aux | grep "[7]000.conf"
也可以。
這很酷。你能解釋它是如何工作的嗎? – DiegoSalazar
查看http://stackoverflow.com/a/9375940/2599522獲取解釋;) – user2599522
使用'ps aux | grep -v'7000.conf'。不需要雙grep也不awk。 -v只是「在做grep時從結果中刪除自己」。 – erm3nda
@ erm3nda:'-v'意思是「反轉匹配」,這樣在使用'7000.conf'的時候就不會找到你要找的東西 - 它會找到其他所有進程。 'awk'也是原始問題的一部分,與刪除'grep'(它從行中提取pid)無關。所以不行。 – Ryan
你說得對。謝謝。 – erm3nda