例えば
if [ "$FOO" = "true" ]; then
対
if [ $FOO = "true" ]; then
何が違うのですか?2つのステートメントの両方とも機能するようです。
a='foo bar'; [[ $a == "foo bar" ]]
。ただし、グロブ文字を含まない変数は、次のものである必要はありません[[ $a == $a ]]
。単語の展開は、二重角括弧内では実行されません。そして、正規表現マッチングのために、右側のパターンが引用されてはならないか、それが文字列リテラルとして解釈されます[[ $a =~ .*oo.*r ]]
(パターンが...しかし、代わりに、非引用された変数でなければなりません
[[ $a == foo* ]]
。私のリテラル文字列の例以外に、引用の要件の追加の例を提供できますか?