Shell流程控制語句
在Linux Shell程式設計中,if、for、while、case等條件流程控制語句用的非常多,把這些學好,對提升指令碼的功力有非常大的幫助。下面將逐個來講解具體的用法:
If條件判斷語句
If (表示式) #if ( Variable in Array )
語句1
else
語句2
fi
案例一,測試數字大小
#!/bin/sh
NUM=100
if (( $NUM > 4 )) ;then
echo “this num is $NUM greater 4 !”
fi
案例二,測試目錄是否存在,不存在則新建(注意,中括號之間必須要空格)
#!/bin/sh #judge dir exist if [ ! -d /data/20140515 ];then mkdir -p /data/20140515 else echo “This DIR is exist,Please exit …..” fi
邏輯運算子解析:
-f 判斷檔案是否存在 eg: if [ -f filename ]
-d 判斷目錄是否存在 eg: if [ -d dir ]
-eq 等於 應用於:整型比較
-ne 不等於 應用於:整型比較
-lt 小於 應用於:整型比較
-gt 大於 應用於:整型比較
-le 小於或等於 應用於:整型比較
-ge 大於或等於 應用於:整型比較
-a 雙方都成立(and) 邏輯表示式 –a 邏輯表示式
-o 單方成立(or) 邏輯表示式 –o 邏輯表示式
-z 空字串
案例三,多個條件測試判斷
#!/bin/sh scores=80; if [[ $scores -gt 85 ]]; then echo "very good!"; elif [[ $scores -gt 75 ]]; then echo "good!"; elif [[ $scores -gt 60 ]]; then echo "pass!"; else echo "no pass!"; fi;
迴圈語句for
For 變數 in 字串
do
語句1
done
案例一,列印seq多個數
#!/bin/sh
for i in `seq 15`
do
echo “NUM is $i”
done
案例二,找到相關log,然後批量打包
#!/bin/sh
for i in `find /var/log -name “*.log”`
do
tar –czf 2014log.tgz $i
done
迴圈語句while
while 條件語句
do
語句1
done
案例一,while條件判斷數字
#!/bin/sh i=1; while [[ $i -lt 10 ]];do echo $i; ((i++)); done;
案例二,while逐行讀取某個檔案
#!/bin/sh
while read line
do
echo $line;
done < /etc/hosts
Until迴圈語句
until 條件
do
action
done
直到滿足條件,才退出。否則執行action。
案例一,條件判斷數字
#!/bin/sh
a=10;
until [[ $a -lt 0 ]];do
echo $a;
((a--));
done;
Case選擇語句
case $arg in
pattern1)
語句1
;;
pattern2)
語句2
;;
*)
語句3
;;
esac
案例一,建立選擇引數指令碼
#!/bin/sh
case $1 in
monitor_log)
monitor_log
;;
archive_log)
archive_log
;;
* )
echo "Usage:{$0 monitor_log | archive_log |help }"
;;
esac
select選擇語句
#!/bin/sh
PS3="What you like most of the open source system?"
select i in CentOS RedHat Ubuntu
do
echo "Your Select System: "$i
done
相關推薦
shell 流程控制語句
pan oot 示例 strong 更多 -o 一個 post 文件 一、if 語法格式:if test -d $arg then ... else ... fi 變量測試語句可以用 [ ] 簡化。例:test -d $arg 等價於 [ -d $arg ]。( 註意:"空
shell流程控制語句 case
不常用 多個 流程 shell流程控制 ase 讀取 ext ffffff 提示符 linux的shell前前後後學了好幾遍了奈何記性不好,總是忘了,追主要的原因可能是不常用的原因吧!case開頭 esac結尾下面是結果輸入法不對 輸入的符號就不對,剛開始總錯,後來切換了
學習筆記 shell流程控制語句 if 和 for
if條件測試語句 使用單分支的if條件語句來判斷/media/cdrom檔案是否存在,若存在就結束條件判斷和整個Shell指令碼,反之則去建立這個目錄: [[email protected] ~]# vim 1.sh #!/bin/bash DIR="
Shell流程控制語句
在Linux Shell程式設計中,if、for、while、case等條件流程控制語句用的非常多,把這些學好,對提升指令碼的功力有非常大的幫助。下面將逐個來講解具體的用法: If條件判斷語句 I
1 Linux shell 編程(七):流程控制語句
shell if else Linux 流程控制語句 在shell中如果在終端輸入多個命令,如果以&分隔則將命令放入後臺執行,如果以;分隔,則表示一個命令集合。shell允許使用邏輯操作符&&和||來作為命令分隔符,他們分別時AND和OR. && 如果前
shell腳本(二)--if流程控制語句和for循環語句的使用
系統/運維 Linux shell if語句 for循環語句 理論部分:1、在簡單的腳本中各條語句按順序執行,從而實現自動化的管理,順序單一執行太過機械化,不夠“智能”,難以實現更加靈活的系統任務。例如:批量安裝軟件包100臺機器 50臺已安裝 50臺未安裝2、shell環境根據$?來判斷
shell指令碼:流程控制語句
if/else 命令連線符: 單個分支if條件語句 if[ 條件判斷 ] then <程式> fi 或者 if[ 條件判斷 ]; then <程式> fi 多分支 if[ 條件判斷 ]; then <程式> el
Shell基礎知識4:流程控制語句
1 if 條件測試語句 if條件測試語句可以讓指令碼根據實際情況自動執行相應的命令。 1.1 if語句分類 1、單分支結構。 2、雙分支結構。 3、多分支結構。 1.2 單分支結構 if 條件語句的單分支結構由 if、then、fi 關鍵片語成。 如果
linux Vim編輯器、shell指令碼、流程控制語句和計劃任務
本章主要講解shell指令碼,vim編輯器 1. 強制儲存退出 wq! 2. 查詢主機名稱 hostname 3. 在vim中常用的命令 dd刪除游標所在行;5dd刪除自游標所在行開始往下數五行;yy複製游標所在行;5yy複製自游標所在行開始往下數5行內容;n顯示搜尋命令定位到下一個字串
Linux之shell的流程控制語句
一、if-else分支結構 if語法格式: if 條件 then 邏輯塊(通常都是些命令) fi 寫成一行:適用於終端寫法 If 條件; then 邏輯 ; fi If else語法格式: if 條件 then 邏輯塊(通常都是些命令)
[轉]linux shell 流程控制(條件if,迴圈【for,while】,選擇【case】語句例項
linux shell有一套自己的流程控制語句,其中包括條件語句(if),迴圈語句(for,while),選擇語句(case)。下面我將通過例子介紹下,各個語句使用方法。 一、shell條件語句(if用法) if語句結構[if/then/elif/else/fi] if 條件測試語句
shell--條件測試語句和流程控制語句的使用
1. test 判斷 test $num1 == $num2 #判斷是否相等 echo $? test $num != $num2 test $str #判斷字串是否非空,非空結果為0 te
shell有流程控制語句
linux shell有一套自己的流程控制語句,其中包括條件語句(if),迴圈語句(for,while),選擇語句(case)。下面我將通過例子介紹下,各個語句使用方法。 一、shell條件語句(if用法) if語句結構[if/then/elif/else/fi]
linux中的shell script 的流程控制語句
一 :條件判斷: if [ 判斷條件 ];then 當條件成立時執行的語句,其實跟程式語言裡的差不多! fi 或者多重條件判斷 if [ 判斷條件1 ];then 滿足1,則執行這裡的指令 elif [ 判斷條件2 ];then . . . . else 當上面所
Oracle流程控制語句
控制 space reverse logs 2.3 1.2 流程控制語句 case ora 1.選擇語句 1.1 IF...THEN...END IF語句 DECLARE MY_AGE INT; IF MY_AGE IS NULL THEN DBMS
java基礎:流程控制語句(選擇結構if語句)
這樣的 執行 錯誤數據 一點 選擇 邏輯運算符 月份 等級 pri (1)順序結構 從上往下,依次執行 Demo:class ShunXuJieGouDemo { public static void main(String[] args) { System.o
shell--8、Shell 流程控制
shell 流程控制和Java、PHP等語言不一樣,sh的流程控制不可為空,如(以下為PHP流程控制寫法):<?php if (isset($_GET["q"])) { search(q); } else { // 不做任何事情 }在sh/bash裏可不能這麽寫,如果else分支沒有語句
流程控制語句
基礎 num cor 支持 流程 編寫 ons 執行 結果 一、條件語句 條件語句就是指通過判斷得到的結果,來決定是執行還是跳過指定的代碼塊。 1、if 語句 if 語句是條件判斷語句,也是最基本的流程控制語句。 例如: var num = 5;if(num < 10
js流程控制語句
var if else script 流程控制 寫法 break def 嵌套 default 條件語句 條件語句通過判斷得到的結果,來決定是執?還是跳過指定的代碼塊 JavaScript 提供了兩種條件語句: if else switch case if 語句 代碼實現