实战演练

  • if条件
if condition;
then
    commands;
fi
  • else if和else
if condition;
then
    commands;
else if condition; then
else
    commands;
fi
  • 算术比较
    • -gt:大于 #greater than
    • -lt:小于 #less than
    • -ge:大于或等于 #greater equal
    • -le:小于或等于 #less equal
  • 文件系统相关测试

    • [ -f $file_var ]:如果给定的变量包含正常的文件路径或文件名,则返回真。
    • [ -x $var ]:如果给定的变量包含的文件可执行,则返回真。
    • [ -d $var ]:如果给定的变量包含的是目录,则返回真。
    • [ -e $var ]:如果给定的变量包含的文件存在,则返回真。
    • [ -c $var ]:如果给定的变量包含的是一个字符设备文件的路径,则返回真。
    • [ -b $var ]:如果给定的变量包含的是一个块设备文件的路径,则返回真。
    • [ -w $var ]:如果给定的变量包含的文件可写,则返回真。
    • [ -r $var ]:如果给定的变量包含的文件可读,则返回真。
    • [ -L $var ]:如果给定的变量包含的是一个符号链接,则返回真。
  • 字符串比较
    • =或==
    • !=
    • >或<:字母序
    • -z:空字符,则返回真
    • -n:非空字符,则返回真
[root@shaofeng ~]# ./eq.sh
true
[root@shaofeng ~]# cat eq.sh
#!/bin/bash

str1=""
str2="2"
if [[ -n $str1 ]];then
        echo $str1;
elif [[ -z $str2 ]];then
        echo $str2;
else
        echo true
fi

results matching ""

    No results matching ""