免费程序来grep unicode文本文件在Windows中?

我有一个unicode文本文件(从regedit导出)的集合,我想拉出所有的行上有一定的文字。

我已经尝试过Grep for Windows和findstr,但都似乎无法处理unicode编码。 我的结果是空的,但是当我使用-v选项(显示不匹配的行)时,输出显示每个字符之间的NUL。

有什么免费的选项来执行Windows中的Unicode文件简单的grep

Solutions Collecting From Web of "免费程序来grep unicode文本文件在Windows中?"

那么,虽然findstr不能直接处理Unicode文件, type does和findstr实际上处理Unicode 输入没有问题。

所以你需要做的只是

 type myfile.txt | findstr /c:"I'm searching for this" 
 >输入uc-test.txt
 Unicode测试。  äöüß
另一条线
别的东西
 > findstr“Something”uc-test.txt

 > findstr / v“Something”uc-test.txt
  ■最好的测试  õ÷³</s>
 一条notherline
 蛇麻子
 >输入uc-test.txt |  findstr“另一个”
另一条线

只是遇到grepWin ,这完美的工作,我想在这里。 希望我能早点找到它!

绝对去用cygwin(使用x服务器) – 最新的支持utf8。 在我最后的演出中,我和中日韩人物做了很多工作。 使用Cygwin的x服务器,您可以搜索任何字符,并显示任何字符,你有一个固定宽度的字体。 还可以查看od和xxd,这使得使用十六进制字符输入搜索变得容易,例如:$ echo'?' | grep $(echo'3f'| xxd -p -r)

如果您有记事本++,则可以使用“在文件中查找…”选项来搜索unicode文件。

我多年来一直没有使用windows,但是我知道grep的两种替代方法,它们是用解释型语言编写的,因此应该可以在任何平台上运行:

  • ack-grep (perl)
  • 笑 (在Python中)

两者都是命令行工具,但我假设你已经有了一个解决方案,如果你已经使用grep for windows。

看看他们,我很抱歉,我不能帮助一个比这更好的同胞。

你可以使用dnGREP 。 这是另一个支持unicode文件类型的开源grep工具。

我在Windows命令行中使用http://unxutils.sourceforge.net/中&#x7684; grep.exe和“chcp 65001”命令连接。

cygwin是你的选择吗? 也许内建的grep比你尝试的更好

问候

检查出BareGrep 。 我想它会做你想要的。

perl -CSD -ne'print if m {\ Q你的文本在这里\ E}'file.txt

我相信你需要在Windows中最便捷的免费程序是Powershell。 例如:

Get-ChildItem -Recurse -path c:\ temp \ *。c | Select-String -pattern“myunicodestring”

或者如果你只是想在一个目录(不在子目录中)搜索:

Select-String -path“c:\ mydir \ * .log”-pattern“error”