linux:shell脚本(逻辑判断和字符串比较)

linux:shell脚本(逻辑判断和字符串比较)

2023年8月2日发(作者:)

linux:shell脚本(逻辑判断和字符串⽐较)常⽤⽐较和判断:整数⽐较: -lt ⼩于 -le ⼩于等于 -gt ⼤于 -ge ⼤于等于 -eq 等于 -ne 不等于 例:if [ ${var} -le 10 ]; then echo "${var}⼩于等于10" fi 注意:if [ ]⾥两边要有空格⽂件测试:-f 存在且是普通⽂件

-d 存在且是⽬录

-s 存在且字节数⼤于0

-r 存在且可读

-w 存在且可写

-x 存在且可执⾏

例:if [ -f ${file} ];then echo "${file}存在且是⽂件" fi逻辑判断使⽤ &&(且)、||(或)、!(取反)例:if [ ! -d ${file} ]; then echo "${file}不存在或者不是⽬录" fi字符串⽐较:常⽤⽐较运算符:= 或者(==)、!=-z表⽰后⾯的值是否为空,为空则返回true,否则返回false。-n表⽰判断后⾯的值是否为空,不为空则返回true,为空则返回false。例:if [ -z ${str} ] || [ -z ${var} ]; then echo "${str}值为空或者${var}的值为空" fi

str="root" if [ ${str} == 'root' ]; then echo "${str}字符串与root相等" fi注意:    ⽐较运算符的两边都有空格分隔(即==或=两边要有空格,如果没有空格,不能做判断,直接运⾏if后的语句),同时要注意⽐较运算符两边的变量是否可能为空,例:str="root" if [ ${str}=="root" ];then echo "erro" fi==两边没有空格,不会进⾏if判断,直接运⾏echo "erro"在使⽤变量⽐较字符串之前,最好在判断之前加⼀个判断变量是否为空 或者使⽤双引号将其括起来,注意,必须使⽤双引号,因为变量在双引号中才会被解析。例:str="root" if [ -n ${str} ];then echo "${str}值不为空" fi if [ "${str}" == "root" ];then echo "${str}与root相等" fi

发布者:admin,转转请注明出处:http://www.yc00.com/web/1690916322a462798.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信