編集する

編集する

値=${VAR |

シェルスクリプトでこの変数割り当てを見つけました。ここで||シンボルが使用される理由を理解できません。

編集する

与えられたコードコメント:

#!/bin/bash
source /opt/cpf/bin/cpf_logging_helper.sh
STATE=$1
DNS_MASTER=${TEST.DNS.DNS_MASTER:-o}
service status dns > /dev/null
rval=$?
if [ $rval -eq 0 ]
then
    if [ $DNS_MASTER == `hostname -s` ]
    then
        echo "1"
    else
        echo "2"
    fi
fi

ベストアンサー1

元のエンコーダは、値が設定されていない場合はその$VAR値を使用することを意図しているようです。oこれは、bash次の方法を使用して達成できます。

VALUE=${VAR:-o}

また、参照しman bashて検索Parameter Expansionしたり、:-

おすすめ記事