Si prega di considerare questo semplice script chiamato test :
#!/bin/bash
echo $1
e i seguenti comandi e chiamate:
$ echo "A B"
A B
$ echo ""A B""
A B
$ echo """A B"""
A B
$ echo """A B"""
A B
$ ./test "A B"
A B
$ ./test ""A B""
A
$ ./test """A B"""
A B
$ ./test """"A B""""
A
Qualcuno potrebbe spiegare perché la chiamata del test non si comporta come l' eco del comando o punta alla documentazione pertinente?
printf '%q\n' "$@"
invece che echo
affatto, il che emetterà i tuoi argomenti uno-a-una-linea con caratteri nascosti e spazi bianchi fuggiti in una forma visibile.