需求說明:
在實際寫腳本的過程中,需要判斷某個變量的值是否為某個數字,
比如,判斷某個進程的數量是否為0用來確定進程是否存在,這樣的情況。
簡單來說,算術比較。
測試過程:
通過以下的腳本來判斷mysql的后台進程數是否為0,如果不為0,
顯示出當前的進程數量。
腳本如下:
#!/bin/bash pid_cnts=$(ps -ef | grep mysqld | grep -v grep | awk '{print $2}' | wc -l) if [ $pid_cnts -eq 0 ]; then echo "process mysqld is exception,please check." else echo "mysqld count = $pid_cnts." fi
1.腳本執行過程:
[root@redhat6 ~]# ./ts.sh
mysqld count = 2.
2.將mysql進程關閉,重新執行以上測試腳本:
[root@redhat6 ~]# service mysqld stop
Shutting down MySQL. SUCCESS!
[root@redhat6 ~]# ./ts.sh
process mysqld is exception,please check.
備注:通過以上的腳本執行,可以知道mysqld進程的數量是2個,不為0.當關閉掉mysqld進程之后,再次
執行腳本,就輸出了echo "process mysqld is exception,please check."這部分的內容。
判斷一個變量是否為0的方法:
[ $pid_cnts -eq 0 ] 如果變量pid_cnts的值是0,那么返回就是真。
注意:-eq就是英文equal的縮寫,就是等於,也比較好記憶。pid_cnts是自定義的變量,實際過程根據自己的變量名字進行修改。
文檔創建時間:2018年3月9日10:07:36