跳到主要内容

shell流程控制

判断语句

# 1
if
then
...
fi

# 2
if
then
...
else
...
fi

# 3
if
then
...
elif
then
...
else
...
fi

# 写成一行的例子:
if [ $(ps -ef | grep -c "ssh") -gt 1 ]; then echo "true"; fi

循环

for循环

for n in m
do
...
done

# 写成一行的例子:
for var in item1 item2 ... itemN; do command1; command2…; done;

while循环

while (( ... ))
do
...
done

无限循环

# 1
while :
do
...
done

# 2
while true
do
...
done

# 3
for (( ; ; ))
do
...
done

until循环

# false时执行命令
until [ ... ]
do
...
done

case

  • case语句为多选择语句。可以用case语句匹配一个值与一个模式,如果匹配成功,执行相匹配的命令。
case ... in
值1)
...
;;
值2)
...
;;
esac

跳出循环

  • continue:跳出当次循环
  • break:跳出循环