相关疑难解决方法(0)

是什么让 grep 将文件视为二进制文件?

我的机器上有一些来自 Windows 系统的数据库转储。它们是文本文件。我正在使用 cygwin 来查看它们。这些似乎是纯文本文件;我用记事本和写字板等文本编辑器打开它们,它们看起来很清晰。但是,当我对它们运行 grep 时,它会说binary file foo.txt matches.

我注意到这些文件包含一些 asciiNUL字符,我认为它们是数据库转储中的工件。

那么是什么让 grep 认为这些文件是二进制的呢?的NUL性格吗?文件系统上有标志吗?我需要更改什么才能让 grep 显示匹配行?

grep

225
推荐指数
6
解决办法
16万
查看次数

grep 如何确定文件是二进制文件?

我有一个很大的 utf-8 文本文件,我经常用grep. 最近grep开始报告它是一个二进制文件。我可以继续用 搜索它grep -a,但我想知道是什么改变使它决定文件现在是二进制的。

我有一份上个月的副本,该文件不再被检测为二进制文件,但这对diff他们来说不切实际,因为它们在 > 20,000 行上有所不同。

file 将我的文件标识为

UTF-8 Unicode 英文文本,行很长

我怎样才能找到字符/行/等。在我的文件中触发了这个变化?


类似的非重复问题19907涵盖了 NUL 的可能性,但grep -Pc '[\x00-\x1F]'表示我没有 NUL 或任何其他 ANSI 控制字符。

grep text-processing binary

8
推荐指数
1
解决办法
1058
查看次数

标签 统计

grep ×2

binary ×1

text-processing ×1