Il carattere ASCII del separatore unità (ASCII 31, ottale 37), è visibile in Vim come a ^_
. Ma se stampo lo stesso file sul terminale, il personaggio è invisibile. Questo fa sì che i campi su una linea rimangano bloccati insieme:
# In Vim and less:
first field^_second field^_last field
# cat the same file to terminal:
cat delim.txt
first fieldsecond fieldlast field
# print 2nd field with awk
cat delim.txt | awk 'BEGIN {FS = "\037"} {print $2}'
second field
Suppongo di poter rendere visibile il separatore unità con cat -v:
cat -v delim.txt
first field^_second field^_last field
Ma questo è piuttosto ingombrante. Perché il separatore unità non ha una rappresentazione visibile quando viene stampato su stdout nella shell Bash? Non riesco nemmeno a copiare e incollare correttamente l'output della shell; il separatore dell'unità si perde nel processo.