这本部分中,我们学到如下的命令:
1. break命令
2:冒号命令
3. continue命令
1.break命令你可以用这个命令在控制条件未满足之前,跳出for while until 循环
在默认情况下,break只跳出一层循环
- #!/bin/sh
-
-
rm -rf fred*
-
-
echo > fred1 #echo > fred1 建立文件
-
echo > fred2
-
mkdir fred3 # 新建文件夹
-
echo > fred4
-
-
for file in fred*
-
do
-
if [ -d "$file" ]
-
then
-
break
-
fi
-
done
-
-
echo first directory starting fred was $file
-
rm -rf fred*
-
exit 0
2.冒号(:)命令冒号命令是一个空命令。它偶尔被用于简化条件逻辑,相当与true的别名。
由于他是
内置命令,所以他运行
比ture块,但是他的 可读性较差
使用地方:
1.在while中:
while :实现了一个无限循环,代替了更加常见的while true
2.变量的条件设置中
如果没有:,shell将试图把$var当作一条命令来处理
在一些shell脚本中,主要在旧的脚本中,看到冒号被用来在一行的开头来表示一个注释,
但是现代的注释,都用#,这样执行效率更高
一个简单的例子,其中 冒号 被用作
空命令- #!/bin/sh
-
-
rm -f fred
-
-
if [ -f fred ]
-
then
-
: #空命令
-
else
-
echo file fred did not exits
-
-
fi
-
exit 0
3 continue 命令非常类似c语言中的
- #!/bin/sh
-
-
rm -rf fred*
-
-
echo > fred1
-
echo > fred2
-
mkdir fred3
-
echo > fred4
-
-
for file in fred*
-
do
-
if [ -d "$file" ] #假如检测到fred3,是个目录,continu返回到 for file in fred*,不向下执行了
-
then
-
echo "skipping directory $file"
-
continue
-
fi
-
echo file is $file
-
done
-
-
rm -rf fred*
-
exit 0
阅读(1149) | 评论(0) | 转发(0) |