XpfLinux联盟 While循环XpfLinux联盟 语法:while 表达式XpfLinux联盟 doXpfLinux联盟 操作XpfLinux联盟 doneXpfLinux联盟 只要while表达式成立,do和done之间的操作就一直会进行。XpfLinux联盟 until循环XpfLinux联盟 语法:until 表达式XpfLinux联盟 doXpfLinux联盟 操作XpfLinux联盟 doneXpfLinux联盟 重复do和done之间的操作直到表达式成立为止。XpfLinux联盟 例:XpfLinux联盟 #test untilXpfLinux联盟 #add from 1 to 100XpfLinux联盟 total=0XpfLinux联盟 num=0XpfLinux联盟 until test num ?Ceq 100XpfLinux联盟 doXpfLinux联盟 total=`expr $total + $num` //注意,这里的引号是反引号,下同XpfLinux联盟 num=`expr $num+1`XpfLinux联盟 doneXpfLinux联盟 echo “The result is $total”XpfLinux联盟 执行结果如下:XpfLinux联盟 [beichen@localhost bin]$untilXpfLinux联盟 The result is 5050!XpfLinux联盟 五、条件语句XpfLinux联盟 Shell程序中的条件语句主要有if语句、case语句;XpfLinux联盟 If语句XpfLinux联盟 语法:if 表达式1 thenXpfLinux联盟 操作XpfLinux联盟 elif 表达式2 thenXpfLinux联盟 操作XpfLinux联盟 elif 表达式3 thenXpfLinux联盟 操作XpfLinux联盟 …..XpfLinux联盟 elseXpfLinux联盟 操作XpfLinux联盟 fiXpfLinux联盟 Linux里的if的结束标志是将if反过来写成fi;而elif其实是else if的缩写XpfLinux联盟 其中elif理论上可以有无限多个。XpfLinux联盟 Case语句XpfLinux联盟 语法:case 字符串 inXpfLinux联盟 值1|值2)XpfLinux联盟 操作::XpfLinux联盟 值3|值4)XpfLinux联盟 操作::XpfLinux联盟 值5|值6)XpfLinux联盟 操作::XpfLinux联盟 *}XpfLinux联盟 操作::XpfLinux联盟 esacXpfLinux联盟 case的作用就是当字符串与某个值相同是就执行那个值后面的操作。如果同一个操作对于多个值,则使用”|”将各个值分开。在case的每一个操作的最后面都有两个”::”,分号是必须的。XpfLinux联盟 例:XpfLinux联盟 case $USER inXpfLinux联盟 beichen)XpfLinux联盟 Echo “You are beichen!”;;XpfLinux联盟 liangnian)XpfLinux联盟 echo “You are liangnian”; //注意这里只有一个分号XpfLinux联盟 echo “Welcome!”;; //这里才是两个分号XpfLinux联盟 root)XpfLinux联盟 echo “You are root!:echo Welcome!”;; //将两命令写在一行,用一个分号作为分隔符XpfLinux联盟 *)XpfLinux联盟 echo “Who are you?$USER?”;;XpfLinux联盟 esacXpfLinux联盟 执行结果:XpfLinux联盟 [liangnian@localhost bin]$ testXpfLinux联盟 You are liangnianXpfLinux联盟 Welcome!XpfLinux联盟 关于shell编程基础的东西就介绍这么多,如果你想更进一步了解shell编程的知识,请查阅相关书籍。XpfLinux联盟
|