一.for
1.带列表的for
语法:
for variable in {list}
do
statement1
statement2
...
done
variable 循环变量
list 列表,可以是一系列的数字或者字符串,元素之间用空格隔开
eg:
for var in 1 2 3 4 5 6 7 8
do
echo $var
done
#省略写法表示范围
for var in {1...8}
do
echo $var
done
#也可以跟进命令执行结果作为列表(shell某些命令会输出一个列表 )
for file in $(ls) #等价`ls`
do
echo $var
done
#通配符* = ls * (通配符只是一个符号,而非shell命令,不可以放在$()和``中)
for file in *
do
echo $var
done
2.不带列表的for
语法:
for variable
do
statement1
statement2
...
done
如果没有条件列表shell会从参数中获取 这种写法就等价于条件列表是$@
$*
3.类c风格的for
for ((expression1;expression2;expression3))
do
statement1
statement2
...
done
eg:
for ((i=1;i<5;i++))
do
echo $i
done
#死循环
for ((;;))
do
echo "死循环"
done
4 .for处理数组
array = (a b c d)
for var in ${array[*]}
do
echo $var
done
二.until循环语句 和while反着来
当不满足条件时 一直执行循环体
until expression
do
statement1
statement2
...
done
eg:
i=1
until [[ "$i" -eq 20 ]]; do
#statements
echo $i
let "i++"
done
网友评论