Shell中的if else语句 while语句
2015-03-13 22:55
375 查看
Shell中可以使用"[ ]"进行数据判断,“[ ]”的用法跟test基本一致。
使用“[ ]”时要注意三点(来自鸟哥):
1、在中括号"[]"内的每个组件都需要有空格键来分割。
2、在中括号内的变量,最好都以双引号括起来。
3、在中括号内的常量,最好都以单引号或双引号括起来
if else语句的结构为:
if [ condition ]; then
#some statements
elif [ condition ]; then
#some statements
else
#some statements
fi
下面是一个小例子,其中[ "$yn" == "Y" ] || [ "$yn" == "y" ] 等价于[ "$yn" == "Y" -o "$yn" == "y" ],“-o”表示“或”,连接两个判断。
while语句的基本结构为:
while [ condtion ]
do
#some statements
done
下面是一个小例子:
使用“[ ]”时要注意三点(来自鸟哥):
1、在中括号"[]"内的每个组件都需要有空格键来分割。
2、在中括号内的变量,最好都以双引号括起来。
3、在中括号内的常量,最好都以单引号或双引号括起来
if else语句的结构为:
if [ condition ]; then
#some statements
elif [ condition ]; then
#some statements
else
#some statements
fi
下面是一个小例子,其中[ "$yn" == "Y" ] || [ "$yn" == "y" ] 等价于[ "$yn" == "Y" -o "$yn" == "y" ],“-o”表示“或”,连接两个判断。
#!/bin/bash #read user's input and do something read -p "please input (Y/N):" yn if [ "$yn" == "Y" ] || [ "$yn" == "y" ]; then echo "OK, you say yes." elif [ "$yn" == "N" ] || [ "$yn" == "n" ]; then echo "NO? goodbye." else echo "I don't know what you say" fi #test whether a directory exist,if not,create it if [ ! -d "keystoneclient" ]; then mkdir keystoneclient fi
while语句的基本结构为:
while [ condtion ]
do
#some statements
done
下面是一个小例子:
#!/bin/bash while [ "$yn" != "yes" -a "$yn" != "YES" ] do read -p "please input YSE or yes to stop this loop." yn done echo "OK, you input the correct answer."其中while语句中加入sleep语句可以构造一个简单的计时器,sleep的单位是秒.如下面的例子,每隔一秒打印一下时间。
#!/bin/bash while [ 1 ] do date sleep 1 done
相关文章推荐
- shell 脚本之if、for、while语句
- 求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句
- java题目:求 1+2+...+n,要求不能用除法、 for、 while、 if、 else、 switch、 case 等关键字及条件判断语句( A?B:C)。
- 1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)
- C语言奇思妙想:求1+2+…+n,要求不能使用乘除法、for、while、if、else、s witch、case 等关键字以及条件判断语句(A?B:C)
- Shell if else语句
- 剑指Offer(Java版): 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
- 【九度1506】求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
- shell 判断语句 if else
- SHELL脚本语句 if、for、while、case 图示
- 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)
- Shell中的if else语句小演示
- Shell if语句,case语句,循环for,until,while语句读书笔记
- 题目:求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)
- 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)
- 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
- sql声明变量,及if -else语句、while语句的用法
- .NET(C#):分析IL中的if-else,while和for语句并用Emit实现
- 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
- [置顶] 循环语句if(){}else{}、if(){}else if(){}...else{}、do{}while()、for(){}、with(){}break/continue语句