[ -z STRING ] “STRING” 的长度为零则为真。 [ -n STRING ] or [ STRING ] “STRING” 的长度为非零 non-zero则为真。 [ STRING1 == STRING2 ] 如果2个字符串相同。 “=” may be used instead of “==” for strict POSIX compliance则为真。 [ STRING1 != STRING2 ] 如果字符串不相等...
if [ -z $string ] 如果string 为空if [ $sting ] 如果string 非空,返回0 (和-n类似) 条件表达式引用变量要带$ if [ a = b ] ;then echo equalelseecho no equalfi [macg@machome ~]$ sh test.shinput a:5input b:5no equal (等于表达式没比较$a和$b,而是比较和a和b,自然a!=b) 改正...
表示取反的意思,等号前后字符串是否不相等,注意前后需要空格。 -z 判断字符串是否为空。 -n 字符是否存在。 4、逻辑测试 ①格式1:[ 表达式1 ] 操作符 [ 表达式2 ] ②格式2:命令1 操作符 命令2 操作符: &&或-a 表示且的意思,前面表达式或命令1为真才会执行操作符后面的表达式2或命令2。一假则为假。
if中的-n-zlinux_Shell ===1 混淆的-n -z=== -n 表⽰这个变量或者字符串是否不为空。-z 表⽰这个变量或者字符串为空 上⾯这两句话中最重要的点是不通的 -n 关注的是判断的内容是否不为空如果判断的内容不为空则true 如果内容为空则false -z 关注的是判断的内容是否为空如果判断的内容为...
1. if [ -z "$a" ] 这个表示当变量a的值为空时会怎么样 ,例如我现在需要获取一个文件内容的行数赋值给一个变量,然后把这个变量作为判断条件,但是我不确定这个文件会否存在,所以我得先判断这个变量是否为空,为空则要打印错误,代码示例: exit相当于java的return ...
if [ -z “$n” ] //如果n的值为空,请输入一个数字 then echo “Please input a number.” exit 1 //退出来捕获变量1的值 fi n1=echo $n|sed 's/[0-9]//g'//判断输入的数字是否含有字母或全是字母,使用sed把所有数字置空 if [ ! -zn1]//这一行或者使用if[−n"n1]//这一行或者使用...
1) if [ -z "$str" ] (-n 为⾮空)$str需要加双引号 2)if [ "$str" = "" ]3)if [ x"$str" = x ]常⽤:if [ ! -d ${DIR} ]; then mkdir -p ${DIR} -z⾄-d意思:[ -a FILE ] 如果 FILE 存在则为真。[ -b FILE ] 如果 FILE 存在且是⼀个块特殊⽂件则为真...
1、if [ -z “$a” ] 这个表示当变量a的值为空时会出现错误 #!/bin/bashif[!-f/tmp/a1]thenecho"/tmp/a1 not exist."exitn=`wc-l/tmp/a1`if[-z"$n"]thenechoerrorexitelseif[$n-gt100]thenechookfi 1. 2. 3. 4. 5. 6.
-L filename 如果 filename为符号链接,则为真 -r filename 如果 filename可读,则为真 -w filename 如果 filename可写,则为真 -x filename 如果 filename可执行,则为真 -s filename 如果文件长度不为0,则为真 -h filename 如果文件是软链接,则为真 filename1 -nt filename2 如果 ...