shell脚本while语句 一文读懂 Shell 脚本编程

03/15 01:42:19 来源网站:辅助卡盟网

expr命令:用于简单的整数运算,包括加(+)、减(-)、乘(*)、整除(/)和求模(%)等操作

expr 12 + 5 \* 3        #反斜线\去掉*号的元字符含义
27
expr 3 - 8 / 2
-1
#####
num=9
sum=`expr $num \* 6`    #反撇号`引用命令的运行结果
echo $sum
54

⏩ 结构性语句:根据程序的运行状态、输入数据、变量的取值、控制信号以及运行时间等因素来控制程序的运行流程。主要包括条件测试语句、多路分支语句、循环语句、循环控制语句和后台执行语句等

测试语句:test语句可测试字符串、整数和文件属性

test "$answer" = "yes"  #变量answer的值是否为字符串yes
test $num –eq 18	  #变量num的值是否为整数18
test -d tmp    	  #测试tmp是否为一个目录名
##### 字符串测试 ##### 
s1 = s2    #测试两个字符串的内容是否完全一样
s1 != s2   #测试两个字符串的内容是否有差异
-z s1 	    #测试s1字符串的长度是否为0
-n s1 	    #测试s1字符串的长度是否不为0
##### 整数测试 ##### 
a -eq b    #测试a与b是否相等
a -ne b    #测试a与b是否不相等
a -gt b    #测试a是否大于b
a -ge b    #测试a是否大于等于b
a -lt b    #测试a是否小于b
a -le b    #测试a是否小于等于b

##### 文件测试 ##### 
-d name    #测试name是否为一个目录
-e name    #测试一个文件是否存在
-f name    #测试name是否为普通文件
-L name    #测试name是否为符号链接
-r name    #测试name文件是否存在且为可读
-w name    #测试name文件是否存在且为可写
-x name    #测试name文件是否存在且为可执行
-s name    #测试name文件是否存在且其长度不为0
f1 -nt f2  #测试文件f1是否比文件f2更新
f1 -ot f2  #测试文件f1是否比文件f2更旧

条件语句

if [condition1]; then
    ...
elif [condition2]; then
    ...
else
    ...
fi

多路分支语句

case $variable in 
  "case1")
    ......
  ;;
  "case2")
    ......
  ;;

  "case3")
    ......
  ;;
  *)
    ......
  ;;
esac

循环语句

for var in con1 con2 con3 ...
do
    ......
done
while  [condition]
do
    ......
done

循环控制语句

break	     #终止执行所有循环
continue    #终止该次循环,进行下次循环

4. shell函数

把一个功能封装起来,使用时直接调用函数名,模块化,代码可读性强,扩展性方便。shell中有两种定义函数的语法格式:

# 若写了function,可以省略函数名后的括号
function fname {
    ......
}
# 不写function时,函数名后需要加括号
fname() {

shell脚本中的if语句_shell脚本while语句_shell脚本嵌入sql语句

    暂无相关资讯
shell脚本while语句 一文读懂 Shell 脚本编程