#!/bin/bash for num in 1 2 3 4 5 do if [ $num -eq 3 ]; then break# 当num=3时跳出循环 fi echo"num = $num" done # 输出: # num = 1 # num = 2
示例:多层循环跳出
1 2 3 4 5 6 7 8 9 10 11 12 13
#!/bin/bash # 双层循环,break 2 跳出两层 for i in 1 2 3 do for j in a b c do if [ "$j" = "b" ]; then break 2 # 直接跳出两层循环 fi echo"i=$i, j=$j" done done # 输出:i=1, j=a
continue:跳过本次循环
跳过当前循环中的剩余命令,直接进入下一次循环。
示例:跳过特定值
1 2 3 4 5 6 7 8 9 10 11 12 13
#!/bin/bash for num in 1 2 3 4 5 do if [ $num -eq 3 ]; then continue# 当num=3时跳过本次循环 fi echo"num = $num" done # 输出: # num = 1 # num = 2 # num = 4 # num = 5
exit:退出脚本
直接终止整个脚本的执行,可指定退出状态码(exit 0 表示成功,非 0 表示失败)。
示例:遇到错误退出脚本
1 2 3 4 5 6 7 8 9
#!/bin/bash for file in file1.txt file2.txt file3.txt do if [ ! -f "$file" ]; then echo"错误:文件 $file 不存在!" exit 1 # 非0状态码表示执行失败 fi echo"处理文件:$file" done