簡體   English   中英

awk在bash腳本中不起作用

[英]Awk not working inside bash script

我試圖編寫一個bash腳本,並試圖從用戶那里獲取輸入並執行kill命令來停止特定的tomcat。

...

read user_input
if [ "$user_input" = "2" ]
then
ps -ef | grep "search-tomcat" |awk {'"'"'print $2'"'"'}| xargs kill -9
echo "Search Tomcat Shut Down"
fi

...

我已經確認了

ps -ef | grep“ search-tomcat”

在腳本中工作正常,但:

ps -ef | grep“ search-tomcat” | awk {'“'”'print $ 2'“'”'}

不會在腳本中產生任何結果,但是會在終端中提供所需的輸出,因此awk命令必須存在一些問題

xargs可能很棘手-嘗試:

殺死-9 $(ps -ef | awk'/ search-tomcat / {print $ 2}')

如果您更喜歡使用xargs,請檢查手冊頁以獲取目標操作系統的選項(例如xargs -n)。

還注意到“ kill -9”是一種非優美的進程退出機制(即可能的文件損壞,其他異常),因此我建議僅將其用作最后的手段...

:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM