shell 语句
Posted jack_hzm
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell 语句相关的知识,希望对你有一定的参考价值。
注意: 1变量等号两边不能有空格 2 expr 指令必须要用转义字符‘’ 3 expr里面的加减乘除必须有空格 因为脚本需要通过这些来识别语句
#!/bin/bash A=`expr 3 + 5 * 3` #注意这个引号是在ESC下面的引号哦,*需要转义字符 echo $A B=`expr 3 / 5` echo $B C=`expr 3 % 5` echo $C
【3】测试语句 (1)test语句 test语句可测试三种对象: 字符串 整数 文件属性 (2)每种测试对象都有若干测试操作符 例如: test "$answer" = "yes" 变量answer的值是否为字符串yes test $num –eq 18 变量num的值是否为整数18 test -d tmp 测试tmp是否为一个目录名 (3) 字符串测试 s1 = s2 测试两个字符串的内容是否完全一样 s1 != s2 测试两个字符串的内容是否有差异 -z s1 测试s1 字符串的长度是否为0 -n s1 测试s1 字符串的长度是否不为0 (4) 整数测试 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 (5) 文件测试 -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 更旧
相关代码
#!/bin/bash #注意声明 类似C语言的字符串比较函数 A="how" B="how" test $A = $B echo $? pwd echo $? #test ls #echo $? A=`expr 3 + 5` $不可以用echoz直接输出 echo $A
#!/bin/bash #数据比较,类似C语言的判断预计 A=434 B=434 test $A -le $B echo $?
#!/bin/bash $文件的测试比较函数 test -d /home/linux/HUA_QING_YUAN_JIAN/level_2/day3_shell/expr.sh echo $? test -r /home/linux/HUA_QING_YUAN_JIAN/level_2/day3_shell/expr.sh echo $? test -w /home/linux/HUA_QING_YUAN_JIAN/level_2/day3_shell/expr.sh echo $? test -e /home/linux/HUA_QING_YUAN_JIAN/level_2/day3_shell/expr.sh echo $? test -f /home/linux/HUA_QING_YUAN_JIAN/level_2/day3_shell/expr.sh $可以直接用HOME来代替/home/linux 指令哦 echo $? test -L /home/linux/HUA_QING_YUAN_JIAN/level_2/day3_shell/expr.sh echo $? test -x /home/linux/HUA_QING_YUAN_JIAN/level_2/day3_shell/expr.sh echo $? test -s $HOME/HUA_QING_YUAN_JIAN/level_2/day3_shell/expr.sh echo $?
以上是关于shell 语句的主要内容,如果未能解决你的问题,请参考以下文章