hadoop三:shell脚本条件控制语句

if语句:

语法格式:条件控制必须首尾对应!有运算符时:运算前后必须要有空格,变量前后必须要有空格;没有运算符时,变量前后不需要空格。

if []
then
.......语句
else
.....语句
fi

 

if []
then
.......语句
elif []
then
.....语句
elif []
then
.....语句
fi

 

写成一行:if [] ; then ....语句; fi

示例:

#!/bin/bash

a=20
b=10
if [ $a -gt $b]
then
echo '$a:"$a" > $b:"$b"'
elif [ $b - lt $b
then
echo  ' $b:"$b" < $a:"$a"'
fi

 

for 语句:

for var in item1 item2 ........itemN
do
......语句
......语句
done

 

示例:

#!/bin/bash
for var in `seq 1 20`
do
echo "value is ":$var
done

 

#!/bin/bash
for i in `seq 1 20`
do
touch "/home/shell/${i}.log"
done

 

while语句:

while condition
do
......语句
......语句
done

 

示例:

#!/bin/bash
i=0
while (($i < 21)   # 使用(())时,变量前后不需要加空格
do
echo "the value is :"$i
i=`expr $i + 1 `   # 不可以直接使用i++,但可以使用 let "$i++"
#
let "$i++"
done

 case匹配:

casein
模块1)
.......语句
模式2)
.......语句
esac

 

示例:

#!/bin/bash

while :
do
echo "请输入1-5的数字:"
read num

case $num in 
1|2|3|4|5)
echo "你输入的数字为: ${num}"
break
;;
*)
echo "你输入的数字为: ${num},不在1-5之间,请再次输入"
continue
;;
esac

done

 

posted on 2018-09-05 19:25  myworldworld  阅读(114)  评论(0)    收藏  举报

导航