倒置的问号和发现

时间:2016-05-25 15:57:36

标签: batch-file

我似乎无法将某些字符(倒置的问号,花哨的单引号,&符号)写入文本文件,然后在该文件中搜索这些字符。例如,以下findstr在.txt中找不到颠倒的问号项目:

 @echo off
 echo "Cato Event - GO Beyond GDP. What Really Drives the Economy¿">c:\test.txt
 findstr /I /N /C:"Cato Event - GO Beyond GDP. What Really Drives the Economy¿" c:\test.txt 
 pause

 ::chcp 1254

我尝试过使用各种chcp命令也无济于事。 任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

这是FINDSTR的一个已知问题 - 命令行上提供的一些字符带有ANSI字节代码>在进行搜索之前,FINDSTR将127转换为不同的字符,这会导致搜索失败。

解决方案是将搜索字符串放在一个文件中,并使用/L/G选项。

请参阅标题为" 命令行参数的字符限制 - 扩展ASCII转换"在What are the undocumented features and limitations of the Windows FINDSTR command?

唯一的另一个选择(假设您希望坚持使用本机批处理命令)是使用FIND。它的功能要少得多,但它没有字符翻译问题,我相信它应该适用于简单的文字搜索。

find /I /N "Cato Event - GO Beyond GDP. What Really Drives the Economy¿" c:\test.txt 

每个匹配行开头的行号看起来像[123]而不是123: