一、流程控制
1.if 判断
1.基本语法
if [ 条件判断式 ];then程序fi或者if [ 条件判断式 ]then程序fi
注意事项:
(1)[ 条件判断式 ],中括号和条件判断式之间必须有空格。
(2)if 后要有空格。
案例如下:
#!/bin/bashif [ $1 -eq 1 ]thenecho "I love you"elif [ $1 -eq 2 ]then echo "I hate you"fi
2.case语句
case $变量名 in "值1")如果变量的值等于值1,则执行程序1;;"值2")如果变量值等于值2,则执行程序2;;...省略其他分支...*)如果变量的值都不是以上的值,则执行此程序;;esac
注意事项:
case行尾必须为单词“in”,每一个模式匹配必须以有括号“)”结束。双分号“;;”表示命序列结束,相当于java中的break。最后的“*)”表示默认模式,相当于java中的default。
案例如下
#!/bin/bashcase $1 in"1")echo "you";;"2")echo "me";;"3")echo "she";;*)echo "other";;esac
3.for循环
1.基本语法1
for((初始值;循环控制条件;变量变化))do程序done
案例如下
#!/bin/bashs=0for((i=0;i<=100;i++))dos=$[ $s + $i ]doneecho $s
2.基本语法2
for 变量 in 值1 值2 值3do程序done
案例如下
打印所有输入的参数
#!/bin/bashfor i in $*doecho "you like $i"done
#!/bin/bashfor i in "$*"doecho "you like $i"donefor i in "$@"doecho "you like $i"done
4.while 循环
1.基本语法
while [ 条件判断式 ]do程序done
案例如下
#!/bin/bashs=0i=1while [ $i -le 100 ]dos=$[$i + $s]i=$[$i + 1]doneecho $s