~$ echo $'\'test'
'test
man bash
diz:
Colocar caracteres entre aspas simples preserva o valor literal de cada caractere entre aspas. Uma aspa simples não pode ocorrer entre aspas simples, mesmo quando precedida por uma barra invertida.
Por que funciona no echo
-command então?
As aspas simples
'...'
são diferentes das aspas simples de dólar$'...'
. O primeiro não suporta nenhuma barra invertida, enquanto o último usa a especificação ANSI C.choroba
A resposta de está totalmente correta, aqui estão os detalhes deman bash
:É por isso!