時常,某個程式或軟體並沒有語法錯誤,並且你檢查它的相關內容也確實沒有發現問題。這是因為你用普通文字編輯器軟體來查看的時候,有許多字元沒有顯示出來,但在終端使用cat命令可以很容易地檢測出是否存在這些字元。
首先,我們建立一個簡單的文字檔,寫入一些特殊字元。開啟終端,運行命令:
printf 'testing\012\011\011testing\014\010\012more testing\012\011\000\013\000even more testing\012\011\011\011\012' > /tmp/testing.txt
現在用不同的編輯器軟體開啟,顯示的結果會不同。用簡單的cat開啟將顯示:
$ cat /tmp/testing.txt
testing
testing
more testing
even more testing
如果用nano或者vim開啟,將會看到:
testing
testing^L^H
more testing
^@^K^@even more testing
現在我們給cat加上一些選項參數,以便能顯示出特殊字元來。
用cat -T命令來顯示TAB鍵的字元^I
cat -T /tmp/testing.txt
testing
^I^Itesting
more testing
^I
even more testing
^I^I^I
用cat -E命令來顯示行尾的結束字元$
$ cat -E /tmp/testing.txt
testing$
testing
$
more testing$
even more testing$
$
用簡單的cat -A命令就可以顯示所有不可見的字元:
$ cat -A /tmp/testing.txt
testing$
^I^Itesting^L^H$
more testing$
^I^@^K^@even more testing$
^I^I^I$
推薦閱讀:
Linux命令之cd
Linux命令之cat
Linux命令之alias/unalias
Linux命令解析:su root和su -root
Linux命令之 互動式輸入read
via: http://linuxaria.com/pills/linux-terminal-seeing-the-unseen-characters-with-cat?lang=en#more-7645
本文由 LCTT 原創翻譯,Linux中國 榮譽推出
譯者:runningwater 校對:Caroline