ตัวละครหน่วยคั่น ASCII (ASCII 31 ฐานแปด 37) ^_
ปรากฏอยู่ในกลุ่มเป็น แต่ถ้าฉันพิมพ์ไฟล์เดียวกันไปที่เทอร์มินัลตัวละครจะมองไม่เห็น สิ่งนี้ทำให้ฟิลด์บนบรรทัดติดกัน:
# 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
ฉันคิดว่าฉันสามารถทำให้ตัวคั่นหน่วยมองเห็นได้ด้วย cat -v:
cat -v delim.txt
first field^_second field^_last field
แต่นี่ค่อนข้างยุ่งยาก ทำไมตัวคั่นหน่วยไม่มีการแสดงที่เห็นได้ชัดเมื่อพิมพ์ไปยัง stdout ใน Bash shell ฉันไม่สามารถคัดลอกและวางเชลล์เอาต์พุตได้อย่างถูกต้อง ตัวแยกหน่วยสูญเสียในกระบวนการ