shell脚本 for循环 while循环 case选择 expr表达式计算 let整数计算 seq产生序列

2015-06-05 21:39:00
admin
原创 2017
摘要:shell脚本 for循环 while循环 case选择 expr表达式计算 let整数计算 seq产生序列

一、for循环

for区间段

for i in {1..10} #闭区间[1,10]
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

发表评论
评论通过审核之后才会显示。