当前位置: 主页 > 编程 > linuxshell中if的各种判断

linuxshell中if的各种判断

发布时间:2020-01-18 15:23内容来源:网络整理 点击:

      258竞彩下令参数说明-b当file在而且是块文书时归来真-c当file在而且是字符文书时归来真-d当pathname在而且是一个目次时归来真-e当pathname指定的文书或目次在时归来真-f当file在而且是正式文书时归来真-g当由pathname指定的文书或目次在而且设立了SGID位时归来为真-h当file在而且是记号链接文书时归来真,该选项在一部分老系上无用-k当由pathname指定的文书或目次在而且设立了粘滞位时归来真-p当file在而且是下令管道时归来为真-r当由pathname指定的文书或目次在而且可读时归来为真-s当file在文书老幼大于0时归来真-u当由pathname指定的文书或目次在而且设立了SUID位时归来真-w当由pathname指定的文书或目次在而且可履行时归来真。

      -gFILE如其FILE在且曾经设立了SGID则为真。

      TEST-COMMAND时常囊括数目字和字符串的比测试,只是也得以是任何在胜利时归来态0或挫折时归来一部分其它态的一部分下令。

      -kFILE如其FILE在且曾经设立了粘制位则为真。

      STRING1>STRING2如其STRING1sortsafterSTRING2lexicographicallyinthecurrentlocale则为真。

      如其周的数是双数,他就提拔你把垃圾桶踢蹬:!/bin/bashCalculatetheweeknumberusingthedatecommand:WEEKOFFSET=$$(date+"%V")%2Testifwehavearemainder.Ifnot,thisisanevenweeksosendamessage.Else,donothing.if$WEEKOFFSET-eq"0";thenecho"Sundayevening,putoutthegarbagecans."|mail-s"Garbagecansout"your@your_domain.org7.1.2.3.字符串比一个经过比字符串来测试用户ID的案例:if"$(whoami)"!= oot;thenecho"Youhavenopermissiontorun$0asnon-rootuser."exit1;fi使用Bash,你得以缩短这么的构造。

      而如其没这x,抒发式就会报错::=:unaryoperatorexpected二元比操作符,比变量或比数目字.留意数目字与字符串的区分.平头比需求留意的是要么使用和gt结合要么使用大于号和双括号结合-eq对等,如:if"$a"-eq"$b"-ne不对等,如:if"$a"-ne"$b"-gt大于,如:if"$a"-gt"$b"-ge大于对等,如:if"$a"-ge"$b"-lt小于,如:if"$a"-lt"$b"-le小于对等,如:if"$a"-le"$b"大于(需求双括号),如:(("$a">"$b"))>=大于对等(需求双括号),如:(("$a">="$b"))小数据比可使用AWK字符串比=对等,如:if"$a"="$b"==对等,如:if"$a"=="$b",与=等价留意:==的作用在和中的行止是不一样的,如次:1$a==z如其$a以"z"开头(模式配合)那样将为true2$a=="z"如其$a对等z(字符配合),那样后果为true34$a==zFileglobbing和wordsplitting将会产生5"$a"=="z"如其$a对等z(字符配合),那样后果为true一些解说,有关Fileglobbing是一样有关文书的速记法,例如".c"即,再如~也是.只是fileglobbing并不是严厉的正则抒发式,虽说绝大大部分情形下构造比像.!=不对等,如:if"$a"!="$b"这操作符将在构造中使用模式配合.大于,在ASCII假名程序下.如:if"$a">"$b"if"$a"\>"$b"留意:在构造中">"需求被转义.具体参考Example26-11来查阅这操作符使用的案例.-z字符串为"null".即长度为0.-n字符串不为"null"留意:使用-n在构造中测试务务必用""把变量引兴起.使用一个未被""的字符串来使用!-z或即未用""引证的字符串本身,放到构造中。

      一元抒发式时常用来检讨文书的态。

      FILE1-ntFILE2如其FILE1hasbeenchangedmorerecentlythanFILE2,or如其FILE1FILE2doesnot则为真。

      -fFILE如其FILE在且是一个一般文书则为真。

      -sFILE如其FILE在且老幼不为0则为真。

      -nSTRINGorSTRINGSTRING的长度为非零non-zero则为真。

      -oOPTIONNAME如其shell选项OPTIONNAME开启则为真。

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------

推荐内容