grep 在处理一些文件时失败

grep 在处理一些文件时失败

在过去的 30 分钟里,我一直在尝试让它正常工作。grep这并不是最难使用的东西,所以我有点困惑为什么它不起作用。

我尝试使用的文件grep是简单的 XHTML 日志文件。它们的名称格式为[电子邮件保护],虽然我认为这并不重要,里面是简单的 XHTML。

我复制了一个这样的日志文件,以便testfile您可以看到一些命令的输出以及为什么它令我感到困惑:

[~/.chatlogs_windows/dec] > whoami
reid
[~/.chatlogs_windows/dec] > type grep
grep is /bin/grep
[~/.chatlogs_windows/dec] > uname -a
Linux reid-pc 2.6.35-22-generic #33-Ubuntu SMP Sun Sep 19 20:32:27 UTC 2010 x86_64 GNU/Linux
[~/.chatlogs_windows/dec] > cat /etc/issue
Linux Mint 10 Julia
[~/.chatlogs_windows/dec] > ls -lh testfile
-rw-r--r-- 1 reid reid  63K 2011-01-10 12:45 testfile
[~/.chatlogs_windows/dec] > tail -3 testfile 
</body>
</html>
[~/.chatlogs_windows/dec] > file testfile
testfile: XML document text
[~/.chatlogs_windows/dec] > grep html testfile 
[~/.chatlogs_windows/dec] > grep body testfile 
[~/.chatlogs_windows/dec] > grep "</html>" testfile 
[~/.chatlogs_windows/dec] > grep "</body>" testfile
[~/.chatlogs_windows/dec] > cat testfile | grep html
[~/.chatlogs_windows/dec] > cat testfile | wc -l
231
[~/.chatlogs_windows/dec] > cat testfile | tail -3
</body>
</html>
[~/.chatlogs_windows/dec] > chmod a+rw testfile && ls -lh | grep testfile
-rw-rw-rw- 1 reid reid  63K 2011-01-10 12:45 testfile
[~/.chatlogs_windows/dec] > grep html testfile

这就是我试图做的。我只想使用grep -ri query .in ~/.chatlogs_windows,这对我来说通常很完美……但出于某种原因,它完全无法浏览这些文件。

如果这很重要,我会将这些文件从我的 Windows 7 分区中复制出来。但我对它们进行了 chown 处理并赋予了自己所有适当的权限,其他程序(如cat)似乎可以很好地读取它们。我还将 testfile 复制到 testfile_unix 并转换了行尾并尝试了此操作,但同样不起作用。

我使用的是 zsh,但我在 bash 上尝试过,也失败了。另外,grep 工作正常:我在我的文档文件夹中尝试过,它工作得很完美。

如果您需要更多信息,请告诉我。我尝试在 Google 上搜索,但找不到 grep 无法正常工作的原因。提前致谢。

答案1

grep 工具无法识别 UTF-16 文件编码。

相关内容