O primeiro comando
rm hello.txt 2>/dev/null || { echo “Couldn’t delete hello.txt” }
contém os caracteres <U+201C>
(MARCA DE COTAÇÃO DUPLA ESQUERDA), <U+2019>
(MARCA DE COTAÇÃO SIMPLES DIREITA) e <U+201D>
(MARCA DE COTAÇÃO DUPLA DIREITA) que não são especiais para o shell e são emitidos como tal.
O segundo comando
rm hello.txt 2>/dev/null || { echo 'Couldn’t delete hello.txt' }
contém uma string entre aspas simples; o caractere entre n
e t
é novamente <U+2019>
, o que não é especial para o shell.