echo文の二重引用符の役割は何ですか? [閉鎖]

echo文の二重引用符の役割は何ですか? [閉鎖]

ユーザーメッセージを含むBashスクリプトを作成すると、次のことができます。

echo Processing files...

または

echo "Processing files..."

この場合とは異なる多くの場合、出力は同じです。それでは、実際に二重引用符はいつ必要ですか、いつ必要ですか?

私は理解

echo This    is     my      sentence.

そして

echo "This    is     my      sentence."

別の出力が生成されますが(最初の場合は単語の間にスペースがあり、2番目の場合はスペースが保持されます)、二重引用符を使用する理由は他にありますか?またはいいえ二重引用符を使用しますか?

(私は一重引用符が異なる効果を持っていることを知っています。この質問は特にダブル引用符。 )

答え1

いくつかの理由がありますが、主な原因は次のとおりです。

  • スペースを含めるためのより良い制御(ご存知のように)
  • *glob文字などの予期しないシェル拡張に対する部分的な保護?

答え2

二重引用符と一重引用符の間には重要な違いがあります。二重引用符は、引用符付き文字列の中に変数を挿入します(まったく引用符ではありません)。一重引用符はこれを行いません。

関連情報