您好,登錄后才能下訂單哦!
單分支結構
語法:
if [條件]
then
指令
fi
或
if [條件]:then
指令
fi
if單分支條件中文編程語法:
如果 [你有房]
那么
我就嫁給你
果如
提示:分號相當于命令換行,上面兩種語法等用。
特殊寫法:if [-f "$file1"];then echo 1;if 相當于:[if "$file1"]&& echo 1
if [ -f "$file1" ] :then
echo 1
fi
范例1:
#!/bin/bash #功能:單分支if結構整數比較,用-lt格式例子 if [ 10 -lt 12 ] then echo "yes" fi 執行結果: [root@XCN if]# sh test1.sh yes #提示:當比較條件為整數數字時
范例2:使用read及腳本傳參方式如果實現上述整數的比較?
解答:
特別強調:read讀入和命令行傳參是兩種輸入內容的方法。
1)腳本傳參的方式腳本例子
#!/bin/bash if [ $1 -lt $2 ]: then echo "yes,$1 less then $2" fi 輸入結果 [root@XCN if]# sh if2.sh 1 2 yes,1 less then 2
2)單分支if判斷兩整數大小三種情況的腳本例子(以read讀入為例)
#!/bin/bash read -p "pls input two num:" a b if [ $a -lt $b ];then echo "yes,$a less than $b" exit fi if [ $a -eq $b ];then echo "yes,$a eaual $b" exit fi if [ $a -gt $b ];then echo "yes,$a greater than $b" exit fi 見證奇跡的時刻: [root@localhost shell]# sh if1.sh pls input two num:1 2 yes,1 less than 2
范例3:開發shell腳本實現如果/server/scipts下面存在if3.sh的內容就輸出到屏幕
注意:如果執行腳本后發現該if3.sh不存在,就自動創建這個if3.sh腳本
#!/bin/bash path=/server/scripts file=if3.sh #no1 if [ ! -d $path ] then mkdir -p $path echo "$path is not exist,already created it." fi #no2 if [ ! -f $path/$file ] then touch $path/$file echo "$file is not exist,alreadt created it." exit fi #no3 echo "ls -l $path/$file" ls -l $path/$file ~ 執行輸出: [root@localhost ~]# sh if.sh /server/scripts is not exist,already created it. if3.sh is not exist,alreadt created it.
范例4:開發腳本判斷系統剩余內存大小,如果低于100M就郵件報警。
測試報警成功后加入系統定時任務每3分鐘執行一次檢查。
思路:
如果去內容,去內存那個選項。
[root@ailuoli ~]# free -m|grep buffers/ |awk ' {print $NF}' 1781
2.發郵件mail,mutt。sendmail服務器要開啟
[root@ailuoli ~]# yum install sendmail [root@ailuoli ~]# /etc/init.d/sendmail start Starting sendmail: [ OK ] Starting sm-client: [ OK ] [root@ailuoli ~]#echo "xcn"|mail -s "title" 995345781@qq.com
3.編寫腳本
#!/bin/bash userd_mem=`free -m|grep buffers/ |awk ' {print $NF}'` if [ $userd_mem -lt 100 ] then echo "menm is not enough,$userd_men."|mail -s "mem warning $(date +%F)" 995345781@qq.com fi
三分鐘監測一次:
*/3 * * * * /bin/bash /mem.sh
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。