如何使用unix和“cat”命令显示空格和制表符

ruyhziif  于 8个月前  发布在  Unix
关注(0)|答案(2)|浏览(182)

我试图弄清楚如何通过unix显示文件的内容,其中空格和制表符以某种方式标记。我知道如何用标签(又名cat -T filename)显示文件,但我一直在试图弄清楚如何显示空间以及。cat -A filename对我不起作用,它只会用^I替换制表符,并将$放在行尾。如何使用cat打印出所有标签和空格都清楚标记的文件?

wgeznvg7

wgeznvg71#

有一个标准的unix工具用于字符替换。在这个例子中,我将 * 替换为空格,将&替换为制表符:

$ cat tmp
space tab   space   tab end
tab space   tab space end
$ cat tmp | tr " " "*" | tr "\t" "&"
space*tab&space&tab&end
tab&space&tab*space*end
edqdpe6u

edqdpe6u2#

你问题的答案是:不可以,cat命令不能将空格显示为可见字符。它只是不包含这样的功能。Cat仅提供-T(显示制表符)或-E(显示换行符)或-A(显示两种类型)。
我想帕拉科是想说这个,但相反,他他直接跳到为您提供一个变通办法,这是有效的。如果你正在寻找视觉计数空间,这是好的。有许多变通方法,并不是所有的都适合所有的用户。
如果你需要一些不同的东西,我建议你看看Perl的一行程序(因为它们可以很容易地适应现有的UNIX脚本),或者用Python写一些东西,模仿“cat”,但用另一个字符代替空格,就像palako的“tr”例子一样。

相关问题