您的位置:首页 > 运维架构 > Shell

Shell循环与结构化命令

2017-06-04 10:15 507 查看
Shell提供了3种循环命令:for、while、until

for循环

for循环有3中结构:列表for循环,不带列表for循环,类C风格for循环

列表for循环

#详细列出
for VARIABLE in 1 2 3 4 5 .. N
do
command1
command2
commandN
done

#数字段形式
for i in {1..10}
do
echo $i
done

#数字段形式,步跳
for i in {1..10..2}
do
echo $i
done

#命令输出作为list
for i in $(seq 1 2 20)
do
echo "Welcome $i times"
done
#* 扩展为当前目录下的所有文件
for i in $( * )
do
echo "Welcome $i times"
done


不带列表for循环

不带列表for循环,由命令行传递list

for i
do
echo $i
done


类C风格for循环

for (( EXP1; EXP2; EXP3 ))
do
command1
command2
command3
done


while循环

基本结构

min=1
max=100
while [ $min -le $max ]
do
echo $min
min=`expr $min + 1`
done


命令行控制的while

while [[ "$*" != "" ]]
do
echo "$1"
shift
done


shift命令使位置变量下移一位,并使$#减1.当最后一个参数显示给用户后,$#编程0

until循环

myvar=1
until [ $myvar -gt 10 ]
do
echo $myvar
myvar=$(( $myvar + 1 ))
done
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: