テストコマンドでドル記号$の奇妙な動作を説明できる人はいますか?
[ "$a" != "$b" ]
echo $?
1
[ "$a" != "b" ]
echo $?
0
なぜtest "$a" != "$b"
ゼロではなく1を返しますか?
ベストアンサー1
$
変数や特殊パラメータ(など)などのパラメータを拡張するために使用できるbashの特殊文字。$?
二重引用符で囲まれた文字列で使用するには\
$ [ "\$a" != "\$b" ]
$ echo "$?"
0
または、二重引用符の代わりに一重引用符(特に扱われる文字がない場合)を使用してください。
$ [ '$a' != '$b' ]
$ echo "$?"
0