我试图弄清楚如何通过unix显示文件的内容,其中空格和标签以某种方式标记。我知道如何使用标签显示文件(又名cat -T filename
),但我一直试图弄清楚如何显示空格。 cat -A filename
对我不起作用,只替换^I
标签并将$
放在行尾。如何利用cat
打印出一个文件,其中所有标签和空格都清楚标记?
答案 0 :(得分:3)
有一个用于字符替换的标准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
答案 1 :(得分:2)
你的问题的答案:不,猫命令不能"显示"空格作为可见字符。它只是不包含这样的功能。 Cat仅提供-T(显示标签)或-E(显示换行符)或-A(显示两种类型)。
我认为palako的意思是这样说,但他直接跳到了为你提供一个有效的解决方法。如果你想在视觉上计算空间,那很好。有许多解决方法,并非所有用户都适用。
如果您需要不同的东西,我建议您查看Perl单行程序(因为它们可以轻松地适应现有的UNIX脚本),或者在Python中编写一些模仿“cat' cat'但是用另一个角色替换空格,就像palako" tr"例。