我在运行红帽的服务器上有几个稀疏文件。我想查看文件而不必查看归零字节。当我减少文件时,我看到很多 '@^'s 存在零字节。当我 cat 文件时,没有显示任何归零字节。但是,当我 cat 并将其通过管道传输到 less 时,再次显示归零的字节。
为什么会这样?我如何解决这个问题以使用较少的文件查看文件,并且不显示归零位?
我确定当您使用cat
. 您只是看不到它们,因为它们是...零字节,并且当输入零字节时,您的终端什么也不显示。
另一方面,文件是否实际上被稀疏存储在文件系统的实现细节中。工具喜欢less
和cat
不知道(确实不能知道)并且不在乎文件是否稀疏。如果文件碰巧包含一串零字节,那就这样吧。它可以包含一个字节的运行,而不是整个值是 1,并且对它们来说都是一样的。
如果您想要做的是过滤掉零字节并使用 显示所有剩余字节less
,只需使用过滤器删除这些字节:
tr -d \\000 < inputfile | less
Run Code Online (Sandbox Code Playgroud)