セクション3.1.2.3の二重引用符で、Bashマニュアルは次のように述べています。
文字を二重引用符( '"')で囲むと、引用符内のすべての文字のリテラル値が保持されますが、例外は '$'、 '`'、 '\'、および履歴展開が有効な場合は '!'です。
現時点では、単一引用符(')に関心があります。
前のセクションで説明した特別な意味、セクション3.1.2.2は次のとおりです。
文字を一重引用符(
')で囲むと、引用符内の各文字のリテラル値が保持されます。バックスラッシュが先行する場合でも、単一引用符は単一引用符の間に出現しない場合があります。
2つの博覧会を組み合わせて、
echo "'$a'"
変数がここでa定義されていない(従って$a= NULL文字列)は、印刷すべきである$aように、画面上に''シールドであろう、それは特別な意味内部だ有する、$特別な解釈から。代わりに、印刷し''ます。なぜそうなのか?
’, ‘\’, and, when history expansion is enabled, ‘!’." in the manual. But now reading it again I realized the second character is not single quote, ("'") but tilde ("。あなたの迅速な対応に感謝メートル、ありがとうございます。!