全部博文(48)
分类: Python/Ruby
2012-01-14 15:51:42
1.for循环
for循环:是一个基本的循环结构. 它与C语言中的for循环结构有很大的不同
在循环的每次执行中, arg将顺序的访问list中列出的变量.
for arg in
[list]
do
command(s)...
done
注意点:
(1)可以使用命令替换 来产生for循环的[list] #for
i in $(seq 1 5)
(2)在一个for循环中忽略in [list]部分的话, 将会使循环操作$@ -- 从命令行传递给脚本的位置参数.
(3)最好在[list]中的参数加上双引号是为了阻止单词分割.
(4)list中的参数允许包含通配符 #for i in {1..5}
(5)有一种非常像C语言for循环的语法形式. 需要使用(()).
for ((a=1;
a <= LIMIT ; a++)) # 双圆括号, 并且"LIMIT"变量前面没有"$".
2.case (in) / esac 在代码块中控制程序分支
· 对变量使用""并不是强制的, 因为不会发生单词分割.
· 每句测试行, 都以右小括号)来结尾.
· 每个条件判断语句块都以一对分号结尾 ;;.
· case块以esac (case的反向拼写)结尾.
· case结构也可以过滤通配符.
for example:
case "${2}" in
unpack)
ebuild_unpack
;;
compile)
ebuild_compile
;;
all)
ebuild_unpack
ebuild_compile
;;
*)
echo "Please specify unpack, compile or all as the second arg"
exit 1
;;
esac