Greps return 在 Wine 程序生成的文本文件上没有任何内容

Greps return nothing on text files generated by Wine programs

我是一名 Windows 7 难民,在 Mint 工作...但我仍在使用 Wine 下的 EAC(精确音频复制)来翻录我的 CD。我有数千个由 EAC 在 Windows 7 下生成的日志文件,现在其中一些是在 Linux 中但在 Wine 下生成的。我想整理一下提到 "There were errors" 的日志文件。 命令 grep -wr errors * 没有 return 任何东西。现在,如果我使用 Gedit and/or Xed 将一个日志文件剪切并粘贴到一个文本文件中,相同的命令将输出该测试文件的结果,但仅输出那些。 很明显 Windows 起源是失败的原因。问题是"is there an option to add to the command so that it works directly on Windows files,... without going through a conversion process like DOS2Unix or similar?"

测试目录有两个 txt 文件,一个来自 EAC-Wine,第二个“相同”来自 linux 编辑器。第一个文件被 grep 视为二进制文件,因此没有结果,第二个文件正常工作

由于没有答案,我 post 我同意,这不是“Linux 风格”,但仍然有效且高效。使用与上面相同的两个文件,我们再次尝试 grep -wr errors * 结果只给出一个文件:Testlog.txt 应该同时给出两个文件。

所以,因为我正在为 EAC 使用 Wine,所以我也可以尝试使用 Windows 风格的 Grep 程序。其中很多都不起作用,我们至少希望该程序在 GPL 许可下。

一种可能的解决方案是使用

grepWin

A window style grep.

有了它,我们得到了一个很好的解决方案:这两个文件,也许是我们遇到 grep 失败的原因,因为我们看到这两个文件,虽然它们具有相同的内容,但没有相同的编码。

实际上我使用的是程序的便携版 grepWin-x64-2.0.2_portable.exe 如果程序第一次运行良好,第二次总是崩溃,如果您不注意删除文件,它将无法再运行

grepwin.ini

这是在您关闭程序时由程序本身生成的(与程序在同一目录中)。没有什么是完美的!