ps -ef |grep -v 在shell sh 腳本中貌似無效?


 

想通過ps -ef |grep erdp_ |awk '{print $2}' 獲取 erdp_ 開頭的進程id, 執行在終端環境下執行是ok的,但是在 sh 腳本里面竟然多出了 兩個

 

root 11400 4280 0 17:08 pts/5 00:00:00 /bin/bash ./kill.sh erdp_system_app

root 11401 11400 0 17:08 pts/5 00:00:00 /bin/bash ./kill.sh erdp_system_app

root 11403 11401 0 17:08 pts/5 00:00:00 grep erdp_system_app

root 29942 1 3 12:22 pts/0 00:10:10 java -Xms512m -Xmx512m -Dfile.encoding=UTF-8 -DSERVER_PORT=8082 -jar erdp_system_app-2.0.0-SNAPSHOT.war linkServerPId

ps -ef |grep erdp_ |awk '{print $2}' | grep -v 可以過來 第三行, 但是 前面兩行是怎么出現的呢?

 

 

不管怎么樣, 通過下面的命令就好了:

ps -ef |grep erdp_  |  grep -v | grep -v 文件名

或者:

ps -ef |grep erdp_  | grep -vE '(grep|/bin/bash)'

 


免責聲明!

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



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