shell 腳本字符串拼接、進程的健康檢查腳本


在編寫shell腳本的時候,難免會使用shell腳本的字符串拼接,不經常使用的話真的會忘記。本人寫着一篇的目的也就是記錄以下,到時候回過頭來不用找的太麻煩。

首先變量與變量拼接

str1="123"
str2="456"
echo $str1$str2

  結果輸出123456

其次字符串與變量拼接

str3="789"
echo $str3"000"

  輸出結果789000

另外一種變量與字符串拼接方式

echo "${str3}000"

  輸出結果789000

再其次字符串與字符串的拼接

echo "111""222"

  輸出結果111222

再其次linux命令與字符串拼接

echo "[`date` ]"

  這里使用linux 的date日期命令

  輸出結果為[Tue May 26 16:03:36 CST 2020 ]

再其次linux命令與變量拼接

echo `date`$str1

  輸出結果為:Tue May 26 16:05:54 CST 2020123

最后命令與命令的拼接

echo `date``ls`

  輸出結果為:Tue May 26 16:07:36 CST 2020auto.sh logs logsetting.sh logtar.sh lua luajit openResty.conf shelltest.sh src

以上借本包括了所有的shell腳本的字符串拼接,希望對自己和大家都有用。最后附上整體腳本和輸出結果截圖

#字符串與字符串的拼接
str1="123"
str2="456"
echo $str1$str2
#變量和字符串拼接
str3="789"
echo $str3"000"
echo "${str3}000"
#字符串與字符串
echo "111""222"
#字符串與命令
echo "[`date` ]"
#命令與變量
echo `date`$str1
#命令與命令
echo `date``ls`

 

 進程的健康檢查腳本如下:

 1 ps -A -ostat,ppid,pid,cmd |grep -e '^[Z]' | grep -e $PID_NAME  | while read line
 2 do
 3     for col in $line; do
 4         if [[ $col == $PID_NAME":" ]]; then
 5             echo "equal nginx" $father_pid
 6             #kill -9 $father_pid
 7             #kill -HUP $father_pid
 8         fi
 9         father_pid=$col
10     done
11     echo $line
12 done

說明:

PID_NAME 待過濾的進程名字,這里我哦過濾nginx

執行效果如圖所示:

 
       


免責聲明!

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



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