(1)数值测试: -eq:等于则为真 -ne:不等于则为真 -gt:大于则为真 -ge:大于等于则为真 -lt:小于则为真 -le:小于等于则为真 (2)字符串测试: =:等于则为真 !=:不相等则为真 -z字符串:字符串长度伪则为真 -n字符串:字符串长度不伪则为真 (3)文件测试: -e文件名:如果文件存在则为真 -r文件名...
if[ $string1 !=$string2 ]如果string1不等于string2 if [ -n $string ] 如果string 非空(非0),返回0(true) if[ -z $string]如果string 为空 if [ $sting ] 如果string 非空,返回0 (和-n类似) 条件表达式引用变量要带$ if [ a = b ] ;then echo equal else echo no equal fi [macg@mac...
Linux shell if [ -n ] 正确使用方法 if [ str1 = str2 ] 当两个串有相同内容、长度时为真 if [ str1 != str2 ] 当串str1和str2不等时为真 if [ -n str1 ] 当串的长度大于0时为真(串非空) if [ -z str1 ] 当串的长度为0时为真(空串) if [ str1 ] 当串str1为非空时为真 sh...
-z 字符串为"null".就是长度为0. -n 字符串不为"null" 注意: 使用-n在[]结构中测试必须要用""把变量引起来.使用一个未被""的字符串来使用! -z或者就是未用""引用的字符串本身,放到[]结构中。虽然一般情况下可以工作,但这是不安全的.习惯于使用""来测试字符串是一种好习惯....
shell 中利用 -n 来判定字符串非空。 错误用法: ARGS=$*if[-n $ARGS]thenprint"with argument"fiprint" without argument" 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 不管传不传参数,总会进入if里面。 原因:因为不加“”时该if语句等效于if [ -n ],shell 会把它当成if [ str1 ]来处理,-n...
Linuxshellif[-n]正确使用方法 Linuxshellif[-n]正确使⽤⽅法if [ str1 = str2 ] 当两个串有相同内容、长度时为真 if [ str1 != str2 ] 当串str1和str2不等时为真 if [ -n str1 ] 当串的长度⼤于0时为真(串⾮空)if [ -z str1 ] 当串的长度为0时为真(...
shell编程——if语句 if -z -n -f -eq -ne -lt if 条件 then Command else Command fi 别忘了这个结尾 If语句忘了结尾fi test.sh: line 14: syntax error: unexpected end of fi if 的三种条件表达式 [ ] && ——快捷if [ -f "/etc/shadow" ] && echo "This computer uses shadow passwors"...
if [ str1 = str2 ] 当两个串有相同内容、长度时为真 if [ str1 != str2 ] 当串str1和str2不等时为真 if [ -n str1 ] 当串的长度大于0时为真(串非空) if [ -z str1 ] 当串的长度为0时为真(空串) if [ str1 ] 当串str1为非空时为真 ©...
如果所有的 if 和 elif 判断都不成立,就进入最后的 else,执行 statementn。#!/bin/bashreadageif(...
-z string 测试指定字符是否为空,空着真,非空为假 -n string 测试指定字符串是否为不空,空为假 非空为真 -e FILE 测试文件是否存在 -f file 测试文件是否为普通文件 -d file 测试指定路径是否为目录 -r file 测试文件对当前用户是否可读 -w file 测试文件对当前用户是否可写 -x file 测试文件对当前用户...