Linux中的shell(三)

欢迎关注博主公众号

薛定谔的小鱼儿

(一)选择结构程序设计

1.if结构

if 表达式

then 命令表

[else 命令表]

fi

2.case结构

case结构以“case”开头,以“esac”结尾

直接上实例:

#!/bin/bash

#filename:caseweek

read week

case $week in

0)echo "周日";;

1)echo "周一";;

2)echo "周二";;

3)echo "周三";;

4)echo "周四";;

5)echo "周五";;

6)echo "周六";;

执行程序,结果如下:

#chmod u+x caseweek

#./caseweek

3

周三

3.select结构

select 变量 in 列表

do

命令表

done

列表有一个字符串组成的序列,在程序执行select时,该列表以菜单形式进行显示,用户可以在其中选择。

实例:

#!/bin/bash

#filename:selectweek

select n in 周一 周二 周三 周四 周五 周六 周日

do

case $n in

周一)echo "周一";;

周二)echo "周二";;

周三)echo "周三";;

周四)echo "周四";;

周五)echo "周五";;

周六)echo "周六";;

周日)echo "周日";;

break;;

esac

done

(二)循环程序设计

1.while

while [表达式]

do

命令表

done

实例:

#!/bin/bash

#filename:whiletest

i=1

while[$i -le 10]

do

echo "$i"

i=$(($i+1))

done

运行程序:

#chmod u+x whiletest

#./wwhiletest

1

2

3

4

5

6

7

8

9

10

2.for

for 变量 [in 列表]

do

命令表

done

实例:

#!/bin/bash

#filename:viewchar

for i in A B C D E F G

do

echo "请选择答案$i"

done

运行程序:

#chmod u+x

#./viewchar

请选择答案A

请选择答案B

请选择答案C

请选择答案D

请选择答案E

请选择答案F

请选择答案G

3.until

until

命令表1

test 表达式

do

命令表

done

实例:

#!/bin/bash

#filename:testuntil

i=1;

echo "请输入n的值:"

read n

until

test $i -le $n

do

res='expr $i \* $i'

echo '$i--------$res'

i=$(($i+1))

done

4.break语句结束循环,跳出循环,跳出循环后转贷done语句后继续执行。

实例:

#!/bin/bash

#filename:testbreak

echo "输入一个数字:"

read n

i=1

for i in 1 2 3 4 5 6 7 8 9

do

if [$i -eq $n]

echo "退出循环"

break;

else

echo"这是第$i次循环"

fi

done

运行程序:

#chmod u+x testbreak

#./testbreak

输入一个数字:

4

这是第1次循环

这是第2次循环

这是第3次循环

退出循环

5.continue

continue语句是用来跳过本次循环中剩下的代码,即直接调回循环的开始位置。如果条件为真则直接开始下一次循环,否则退出循环。continue是转到下一次循环。

#!/bin/bash

#filename:testcon

echo"输入数字"

read n

i=1

for i in 1 2 3 4

do

if [$i -eq n]

echo" 开始下次循环"

continue;

else

echo"这是第$i次循环"

fi

done

运行程序:

#chmod u+x testcon

#./testcon

输入数字

2

这是第1次循环

开始下次循环

这是第3次循环

这是第4次循环

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值