關於 grep,awk 的小例子


grep 是查找含有指定文本行

grep -v 是取反,比如 grep -v grep 就是查找 不含有 grep 內容的行,簡單來說,就是過濾輸入的 grep 命令

 

 

Demo:

ps -aux | grep seemmo_server.py 就是查找運行的進程記錄

ps -aux | grep seemmo_server.py | grep -v grep 就把自己過濾掉掉

 

進階

ps aux | grep seemmo_server.py | grep -v grep | awk '{print $2}' | xargs kill -9

xargs 包含需強制殺死的pid,而 ps aux | grep seemmo_server.py | grep -v grep | awk '{print $2}' 的效果需要說明Linux的一個原理

管道符“|”用來隔開兩個命令,管道符左邊命令的輸出會作為管道符右邊命令的輸入

解析如下:

1、ps aux 顯示所有的進程

2、ps aux | grep seemmo_server.py 作用是把包括 seemmo_server.py 這個關鍵字的進程都顯示出來

3、如上圖中所示 ps aux | grep seemmo_server.py 會把 grep seemmo_server.py 的進程也統計進來,因此用 ps aux | grep seemmo_server.py | grep -v grep去除grep進程

4、然后,只包含 seemmo_server.py 關鍵字的進程篩選結果作為輸入給 awk '{print $2}',這個部分的作用是提取輸入的第二列,而第二列正是進程的PID
5、最后將 PID 交給 xargs,進行強制殺死

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM