Ký tự phân cách đơn vị ASCII (ASCII 31, bát phân 37), hiển thị trong Vim là a ^_
. Nhưng nếu tôi in cùng một tệp vào thiết bị đầu cuối, ký tự sẽ không nhìn thấy được. Điều này khiến các trường trên một dòng bị kẹt lại với nhau:
# 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
Tôi cho rằng tôi có thể làm cho dấu phân cách đơn vị hiển thị với cat -v:
cat -v delim.txt
first field^_second field^_last field
Nhưng điều này khá cồng kềnh. Tại sao dấu phân cách đơn vị không có biểu thị rõ ràng khi được in ra thiết bị xuất chuẩn trong vỏ Bash? Tôi thậm chí không thể sao chép và dán đầu ra vỏ chính xác; dải phân cách đơn vị bị mất trong quá trình.