違いは何ですか:
./script.sh "$VARIABLE"
そして
./script.sh ${VARIABLE}
あなたはいますか?
答え1
$VARIABLE
違う言葉だと${VARIABLE}
実際には同じです。ただし、特にスクリプトでは次の例を参照してください。
VARIABLE=USER
echo $VARIABLE
あなたは出力を得る
USER
しかし、入力したとき
echo $VARIABLE1
取得すると予想
USER1
VARIABLE1
変数が定義されていないため、何も取得できません。
しかし、もしあなたが使うなら
echo ${VARIABLE}1
期待される結果を得ますUSER1
。
答え2
Sean J. Goffによる投稿:$VAR対${VAR}と引用
VAR=$VAR1 は VAR=${VAR1} の簡略化されたバージョンです。 2つ目はできますが、1つ目はできません。たとえば、配列インデックス参照(移植可能ではない)や部分文字列の削除(POSIX - 移植可能)などがあります。 Bash初心者ガイドの「変数の詳細」セクションとPOSIX仕様のパラメータ拡張を参照してください。
rm -- "$VAR1" や rm -- "${VAR}" など、変数の周りに引用符を使用することをお勧めします。これは変数の内容を原子単位にします。変数の値に空白(デフォルトでは空白の$ IFS特殊変数の文字)またはワイルドカード文字が含まれていて、引用符を付けないと、各単語はファイル名の生成(ワイルドカード)と見なされ、その拡張子が生成されます。何をしても。