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)'

 


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com