shell脚本 for循环 while循环 case选择 expr表达式计算 let整数计算 seq产生序列
- 2015-06-05 21:39:00
- admin
- 原创 2278
一、for循环
for区间段:
do
echo $i
done
for i in {10..1} #闭区间[10,1]
do
echo $i
done
for列表:使用空格、tab、换行符进行元素分割。
for i in 1 2 3 4 5
do
echo $i
done
类似C循环:
for ((i=1; i<10; ++i)); do
if [ $i -eq 5 ]; then
continue
fi
echo $i
done
二、while循环
标准示例:
min=1
max=100
while [ $min -le $max ]
do
echo $min
min=`expr $min + 1`
done
类似C循环:
i=1
while (($i<10)); do
if [ $i -eq 5 ]; then
i=$(($i+1))
continue
fi
i=$(($i+1))
echo $i
done
三、case选择
case "$变量名" in
模式1)
命令序列1
;;
模式2)
命令序列2
;;
*)
默认命令序列
esac
四、expr表达式计算
1、表达式需要空格,变量需要加美元符号;
2、数值运算:echo `expr 1 + 1`,等价于echo $((1+1)),且$(())格式更灵活;
3、逻辑运算:echo `expr 2 \> 1`,使用反斜杠进行转义,输出1或0,等价于echo $((2>1)),$(())格式更灵活;
五、let整数计算
let a=1+1
echo $a,输出2
let a+=2
echo $a,输出4
let a=a+3
echo $a,输出7
六、seq产生序列
seq [OPTION]... LAST
seq [OPTION]... FIRST LAST
seq [OPTION]... FIRST INCREMENT LAST
seq 3
1
2
3
seq 3 5
3
4
5
seq 0 2 10
0
2
4
6
8
10