【问题标题】:What does '-a' do in Unix Shell scripting'-a' 在 Unix Shell 脚本中有什么作用
【发布时间】:2010-10-11 04:42:07
【问题描述】:

下面一行中的-a 是什么意思。

if [ "${FILE_SYSTEM}" != "xyz" -a "${FILE_SYSTEM}" != "abc" ]

【问题讨论】:

    标签: unix shell operators logical-operators


    【解决方案1】:

    man test

     EXPRESSION1 -a EXPRESSION2
                  both EXPRESSION1 and EXPRESSION2 are true
    

    【讨论】:

      【解决方案2】:

      表示逻辑运算符。

      如果两个操作数都为真,则条件为真,否则为假。

      在您的情况下,当变量 $FILE_SYSTEM 不是 xyz 并且不是 abc 时,if 中的条件将为真。

      【讨论】:

        【解决方案3】:

        在 shell 脚本测试(左大括号)中,它表示“和”,因此如果文件系统 var 不等于 xyz AND 不等于 abc,则测试成功。

        【讨论】:

        • [ 是括号,{ 是括号
        【解决方案4】:

        等价于

        if [ "$x" != "a" -a "$x" != "b" ]; then
            do_one_thing
        else
            do_other_thing
        fi
        

        case "$x" in
            a|b) do_other_thing ;;
            *)   do_one_thing ;;
        esac
        

        【讨论】:

          猜你喜欢
          • 2015-02-26
          • 2023-03-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-06-16
          相关资源
          最近更新 更多