if
[ 條件判斷式 ]
;then
程式 fi
或者
if
[ 條件判斷式 ]
then
程式 fi
注:
[ 條件判斷式 ],中括號和條件判斷式之間必須有空格;
if後要有空格;
[mubai@localhost test]$ touch iftest.sh
[mubai@localhost test]$ vim iftest.sh
#!/bin/bashif[
$1 -eq "0"
]then
echo
"hello world"
elif
[$1 -eq "1"
]then
echo
"hello mubai"
fi[atguigu@hadoop101 datas]$ chmod 777 iftest.sh
[atguigu@hadoop101 datas]$ ./iftest.sh 1
hello mubai
case $變數名 in
"值1")
如果變數的值等於值1,則執行程式1
;;"值2")
如果變數的值等於值2,則執行程式2
;; …省略其他分支…
*) 如果變數的值都不是以上的值,則執行此程式
;; esac
注:
case行尾必須為單詞「in」,每乙個模式匹配必須以右括號「)」結束;
雙分號「;;」表示命令序列結束,相當於c中的break;
最後的「*)」表示預設模式,相當於c中的default;
[mubai@localhost test]$ touch casetest.sh
[mubai@localhost test]$ vim casetest.sh
#!/bin/bash
case
$1in
"1")
echo
"hello beijing";;
"2")
echo
"hello shanghai";;
*)echo
"hello hangzhou";;
esac
[mubai@localhost test]$ chmod 777 casetest.sh
[mubai@localhost test]$ ./casetest.sh 2
hello shanghai
for
(( 初始值;迴圈控制條件;變數變化 ))
do 程式
done
或者
for 變數 in 值1 值2 值3…
do 程式
done
[mubai@localhost test]$ touch fortest.sh
[mubai@localhost test]$ vim fortest.sh
#!/bin/bash
s=0for
((i=
0;i<=
100;i++
))do
s=$[
$s+$i
]done
echo
$s[mubai@localhost test]$ chmod 777 fortest.sh
[mubai@localhost test]$ ./fortest.sh
5050
[mubai@localhost test]$ touch fortest2.sh
[mubai@localhost test]$ vim fortest2.sh
#!/bin/bash
for i in
$*do
echo
"hello $i "
done
[mubai@localhost test]$ chmod 777 fortest2.sh
[mubai@localhost test]$ ./fortest2.sh beijing shanghai hangzhou
hello beijing
hello shanghai
hello hangzhou
while
[ 條件判斷式 ]
do 程式
done
[mubai@localhost test]$ touch whiletest.sh
[mubai@localhost test]$ vim whiletest.sh
#!/bin/bash
s=0i=1
while
[$i -le 100 ]
do s=$[
$s+$i
] i=$[
$i+1]
done
echo
$s[mubai@localhost test]$ chmod 777 whiletest.sh
[mubai@localhost test]$ ./whiletest.sh
5050
Shell流程控制
case迴圈 if condition condition then statements if true 1 elif condition condition then statements if true 2 else statements if all else fails fi注 方括號中的...
Shell 流程控制
shell的流程控制不可為空,如果else分支沒有語句執行,就不要寫這個else。if 語句語法格式 if condition then command1 command2 commandn fi寫成一行 適用於終端命令提示符 if ps ef grep c ssh gt 1 then echo t...
Shell流程控制
shell 流程控制 if else if語法格式 if condition then command1 command2 fi 末尾的fi就是if倒過來拼寫 if else語法 if condition then command1 command2 else command1 fi if else...