我希望能夠列印並查看文字檔案中的尾隨空格(僅顯示,而不刪除)。
我嘗試過使用cat -v
它來顯示非列印字符,但它沒有按預期顯示它們(行之間沒有視覺差異)。例如
$ printf "foo\nbar \t\n" > file.txt
$ cat -v file.txt
foo
bar
透過列印/顯示空白,我的意思是一些視覺人類指示,與其他行相比,尾隨空白存在,或透過某些特殊字元、顏色(例如使用 顯示文件時git diff
)或類似的東西。
還有其他辦法嗎?
注意:我使用的是 macOS Sierra,但是我可以存取 GNU 和 BSDcat
命令:
$ type -a cat
cat is /usr/local/opt/coreutils/libexec/gnubin/cat
cat is /bin/cat
$ cat --version
cat (GNU coreutils) 8.28
$ /bin/cat --version
/bin/cat: illegal option -- -
usage: cat [-benstuv] [file ...]
答案1
gnu cat
有-E
這樣的開關,所以輸入類似
printf " one \ntwo \t\n"
它會列印
one $
two $
有很多方法可以模擬該行為,例如sed
在“原始”模式下使用:
sed -n l infile
或者
paste -d '$' infile /dev/null
$
或使用任何文字處理工具在每個換行符之前添加一個...
你也可以嘗試類似的東西
less -p '[[:blank:]]+$' infile
這將突出顯示模式(在本例中為尾隨空白)...