sh脚本中if条件<br>
文件 含义<br> -r True if file exists and is readable<br> -w True if file exists and is writable<br> -x True if file exists and is executable<br> -f True if file exists and is a regular file<br> -d True if file exists and is a directory<br> -c True if file exists and is a character special file<br> -b True if file exists and is a block special file<br> -p True if file exists and is a named pipe (FIFO)<br> -u True if file exists and is a SETUID file<br> -g True if file exists and is a SETGID file<br> -k True if file exists and the sticky bit is set<br> -s True if file exists and has a size greater than zero<br> 逻辑 含义<br> ! Not<br> -a And<br> -o Or (has lower precedence that -a)<br> ( ) Parentheses for grouping<br> 数值 含义<br> -ne Not equal<br> -eq Equal<br> -gt Greater then<br> -ge Greater than or equal<br> -le Less than or equal<br> -lt Less than<br> 其他 含义<br> -z str True if string length is zero<br> -n str True if string length is non-zero<br> str1 = str2 True if strings are identical. Note that this uses a single = symbol unlike<br> C’s equality operator.<br> str1 != str2 True if strings are not identical<br> str True if string is not the null string<br>
1.if<br> “if” 表达式 如果条件为真则执行then后面的部分:<br> if ….; then<br> ….<br> elif ….; then<br> ….<br> else<br> ….<br> fi<br>