Linux 管理 - 循环控制



我们有时(实际上很多时候)要么想跳过循环迭代操作,要么在完成之前退出循环。这些操作使用以下谓词执行:continue 和 break。

continue

#!/bin/bash 
myFile = "myLines.txt" 
while read -a FILENAME; 
   do 
   
   if [ `echo $FILENAME | grep 004` ]; 
      then 
      continue 
   fi 
   
echo $FILENAME 
done < $myFile

上面的片段将跳过文本文件的第 4 行,然后继续脚本执行。

line001 
line002 
line003 
line005 
line006 
line007 
line008 
line009

break

当条件满足时,break 将完全停止循环,而不是只跳过一次迭代。

#!/bin/bash 
myFile = "myLines.txt"

while read -a FILENAME; 
   do 
   
   if [ `echo $FILENAME | grep 004` ]; 
      then 
         break 
   fi  
   
echo $FILENAME 
done < $myFile

上面的脚本会生成以下输出。

line001 
line002 
line003
linux_admin_shell_scripting.htm
广告