break(continue语法相似)
示例1:
#! /bin/Bash
for ((i=1;i<=10;i++))
do
if [ $i -eq 6 ]; then
break
fi
echo $i
done
示例2:
#! /bin/Bash
for ((i=1;i<=10;i++))
do
for ((j=1;j<=10;j++))
do
r=$((i+j))
if [ $r -eq 19 ]; then
break 2 //跳出第二层循环
fi
done
done
综合示例:
#! /bin/bash
#打开nounset选项,确保本script中各项变量都要事先经过说明才能使用
shopt -s -o nounset
declare -i Num
declare -i i
declare -i cnt
while [[ $Num -lt 2 ]]
do
read -p "请输入一个2以上的正整数: " Num
done
i=2
echo -n $Num '= '
while ((Num>=i))
do
cnt=0
tmp=Num%i
while [[ $tmp -eq 0 ]]
do
((Num/=i))
((cnt++))
tmp=Num%i
done
if [[ $cnt -gt 0 ]]; then
echo -n $i
[ $cnt -gt 1 ] && echo -n '^'$cnt
[ $Num -gt 1 ] && echo -n ' * '
fi
((i>=3 ? i+=2 :i++))
done
echo
示例1:
#! /bin/Bash
for ((i=1;i<=10;i++))
do
if [ $i -eq 6 ]; then
break
fi
echo $i
done
示例2:
#! /bin/Bash
for ((i=1;i<=10;i++))
do
for ((j=1;j<=10;j++))
do
r=$((i+j))
if [ $r -eq 19 ]; then
break 2 //跳出第二层循环
fi
done
done
综合示例:
#! /bin/bash
#打开nounset选项,确保本script中各项变量都要事先经过说明才能使用
shopt -s -o nounset
declare -i Num
declare -i i
declare -i cnt
while [[ $Num -lt 2 ]]
do
read -p "请输入一个2以上的正整数: " Num
done
i=2
echo -n $Num '= '
while ((Num>=i))
do
cnt=0
tmp=Num%i
while [[ $tmp -eq 0 ]]
do
((Num/=i))
((cnt++))
tmp=Num%i
done
if [[ $cnt -gt 0 ]]; then
echo -n $i
[ $cnt -gt 1 ] && echo -n '^'$cnt
[ $Num -gt 1 ] && echo -n ' * '
fi
((i>=3 ? i+=2 :i++))
done
echo