91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

向大家分享一個shell腳本的坑

發布時間:2020-08-16 07:42:32 來源:ITPUB博客 閱讀:167 作者:安全劍客 欄目:建站服務器

打算在跳板機上寫一個shell腳本,批量檢查遠程服務器上的main進程是否在健康運行中。

先找出其中一臺遠程機器,查看main進程運行情況

[root@two002 tmp]# ps -ef|grep main
root     23448 23422  0 11:40 pts/0    00:00:00 grep --color=auto main
 
[root@two002 tmp]# ps -ef|grep main|grep -v grep|wc -l

shell檢查腳本如下

[root@two002 tmp]# cat /tmp/main_check.sh
#!/bin/bash
NUM=$(ps -ef|grep main|grep -v grep|wc -l)
if [ $NUM -eq 0 ];then
   echo "It's not good! main is stoped!"
else
   echo "Don't worry! main is running!"
fi

執行腳本

[root@two002 tmp]# sh -x /tmp/main_check.sh
++ grep main
++ grep -v grep
++ wc -l
++ ps -ef
+ NUM=2
+ '[' 2 -eq 0 ']'
+ echo 'Don'\''t worry! main is running!'
Don't worry! main is running!
 
[root@two002 tmp]# sh /tmp/main_check.sh
Don't worry! main is running!

如上執行結果,發現腳本執行過程中,看到賦予NUM參數的結果值是2!但是手動執行ps -ef|grep main|grep -v grep|wc -l的結果明明是0!!
這是由于grep匹配的問題,需要grep進行精準匹配,即"grep -w"。這就需要將main_check.sh腳本內容修改如下:

[root@two002 tmp]# cat /tmp/main_check.sh
#!/bin/bash
NUM=$(ps -ef|grep -w main|grep -v grep|wc -l)
if [ $NUM -eq 0 ];then
   echo "Oh!My God! It's broken! main is stoped!"
else
   echo "Don't worry! main is running!"
fi

再次執行檢查腳本,就OK了

[root@two002 tmp]# sh -x /tmp/main_check.sh
++ grep -w main
++ grep -v grep
++ wc -l
++ ps -ef
+ NUM=0
+ '[' 0 -eq 0 ']'
+ echo 'Oh!My God! It'\''s broken! main is stoped!'
Oh!My God! It's broken! main is stoped!
 
[root@two002 tmp]# sh /tmp/main_check.sh
Oh!My God! It's broken! main is stoped!

故在跳板機上,批量檢查遠程服務器的main進程運行狀態的腳本為:

[root@tiaoban ~]# cat /usr/bin/main_check
#!/bin/bash
NUM=$(ps -ef|grep -w main|grep -v grep|wc -l)
if [ $NUM -eq 0 ];then
   echo "Oh!My God! It's broken! main is stoped!"
else
   echo "Don't worry! main is running!"
fi
 
[root@tiaoban ~]# cat /opt/script/main_check.sh
#!/bin/bash
 
for i in $(cat /opt/ip.list)
do
/usr/bin/rsync -e "ssh -p22" -avpgolr /usr/bin/main_check $i:/usr/bin/ > /dev/null 2>&1
ssh -p22 root@$i "echo $i;sh /usr/bin/main_check"
done  


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

安宁市| 阿鲁科尔沁旗| 凤台县| 旅游| 蓬莱市| 惠东县| 谢通门县| 广河县| 信宜市| 永城市| 兴和县| 年辖:市辖区| 迁安市| 巩义市| 日喀则市| 故城县| 靖西县| 尼玛县| 太谷县| 永康市| 新丰县| 大埔区| 宽甸| 同心县| 司法| 黔西县| 五峰| 北流市| 潮州市| 西华县| 娄烦县| 沁源县| 丹巴县| 进贤县| 广河县| 周宁县| 周至县| 乌兰察布市| 柞水县| 绥棱县| 北流市|