主要的流程控制语句
1、if …;then do
2、while…;do done
3、for …;do done
1、if …;then do
#!/bin/bash
#初始设置
a=1
b=2
if [ "$a" ="$b" ]; then
echo "相等"
else
echo "不等"
fi
通常用方括号[]表示条件测试,方括号里的空格必不可少,等号前后也有空格,4个空格必不可少,不然程序运行结果不对。
为什么要加“”?在向程序传递任何参数之前,程序会扩展通配符和变量。这里所谓扩展的意思是程序会把通配符(比如*)替换成合适的文件名,它变量替换成变量值。一般都要加引号。
#!/bin/sh
echo $SHELL
echo "$SHELL"
echo '$SHELL'
运行结果为:
/bin/bash
/bin/bash
$SHELL
最后,还有一种防止这种扩展的方法,那就是使用转义字符——反斜杆:
echo \*.jpg
echo \$SHELL
这将输出:
*.jpg
$SHELL
2、while…;do done
倒序输出10到1
#!/bin/sh
num=10
while [ ! "$num" ="0" ]; do
#num=num-1
num=`expr "$num" "-""1"`
echo $num
done
注意空格不能少啊!要严格按照这个格式来。3、for …;do done
格式同前两个,空格不能少。