Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1464623
  • 博文数量: 842
  • 博客积分: 12411
  • 博客等级: 上将
  • 技术积分: 5772
  • 用 户 组: 普通用户
  • 注册时间: 2011-06-14 14:43
文章分类

全部博文(842)

文章存档

2013年(157)

2012年(685)

分类: 系统运维

2012-05-14 19:06:13



if结构

if 表达式
then 命令表
[elif 表达式
then 命令表]
[else 命令表]
fi

可以把if和then放在同一行,用分号“;”分隔:
if 表达式; then
命令表
fi


case结构

case 表达式 in
  模式11 [ |模式12 ]...) 命令表1;;
  模式22 [ |模式22 ]...) 命令表2;;
  ...
      *) 命令表n;;
esac

每个分支以右括号“)”分隔模式与命令,管道符“|”分隔同一分支的各个模式,表示或,两个分号“;;”表示分支结束。星号“*”表示除以上模式之外的情况。


select结构生成一个数字化的菜单,并提示用户进行选择,默认提示符为“#”。用户只需在提示符下输入对应菜单项的数字,即可完成选择。

select 变量 in 列表
do
  命令表
done

例:
select N in one two three
do
  case $N in
    one) echo I;;
    two) echo II;;
    three) echo III;;
    *) echo wrong
      break;
  esac
done

上面的代码会显示菜单:
1) one
2) two
3) three
#? 



while结构

while 表达式
do
  命令表
done


for循环

for 变量 [in 列表]
do
  命令表
done

如果省略了列表,则隐含表示为“for 变量 in $@”,即位置参数列表。bash里的for不能设定循环执行的次数。


until循环

until
命令表1
test 表达式
do
  命令表2
done

命令表1在循环开始前执行,测试如果为假,则进入循环,执行命令表2。之后再次执行命令表1,测试…… 直到测试结果为真,终止循环。


各循环结构支持break和continue

阅读(817) | 评论(0) | 转发(2) |
给主人留下些什么吧!~~