Na seção 3.1.2.3, intitulada aspas duplas, o manual do Bash diz:
O fechamento de caracteres entre aspas duplas ('"') preserva o valor literal de todos os caracteres entre aspas, com exceção de '$', '`', '\' e, quando a expansão do histórico está ativada, '!'.
No momento, estou preocupado com as aspas simples ( ').
Seu significado especial, descrito na seção anterior, seção 3.1.2.2 é:
Incluir caracteres entre aspas simples (
') preserva o valor literal de cada caractere entre aspas. Uma aspas simples pode não ocorrer entre aspas simples, mesmo quando precedida por uma barra invertida.
Combinando as duas exposições,
echo "'$a'"
onde variável anão é definida (daí $a= seqüência nula), deve ser impressa $ana tela, pois '', tendo um significado especial por dentro, protegeria $da interpretação especial. Em vez disso, ele imprime ''. Por quê então?
’, ‘\’, 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 (""). I'