如何跳过for循环

时间:2020-01-09 10:37:21  来源:igfitidea点击:

如果在UNIX/Linux/BSD/OS X下满足某些条件,如何跳过bash for 循环?
您可以使用for循环中的break语句来提前退出。
您可以使用以下语法使用break从FOR循环中退出:

for i in 1 2 3 4 5 6 8 9 10
do
  statements1      #Executed for all values of ''I'', up to a disaster-condition if any.
  statements2
  if (disaster-condition)
  then
	break       	       #Abandon the loop.
  fi
  statements3          # While good and, no disaster-condition.
done

例子

在此示例中,遍历/etc /目录中的所有conf文件,如果/etc/resolv.conf文件,则中断循环,否则在检查所有文件时循环将结束,并且将显示未找到消息:

#!/bin/bash
found=0
for i in /tmp/*.conf
do
	if [ "$i" == "resolv.conf" ]
	then
		echo "resolv.conf found in /etc"
		found=1
		break
	fi
done
if [ $found -eq 0 ]
then
	echo "resolv.conf not found in /etc"
fi