我正在使用findstr
在某些文件中寻找特定的配置设置。在这种情况下,我正在寻找以字符串*=
开头的行,但也可能是* =
或* =
等(星号和等号之间的空格)
到目前为止,我已经尝试过:
findstr /s /i /b "*\*=" .\config.ini
findstr /s /i /b "*.*=" .\config.ini
findstr /s /i /b "*`*=" .\config.ini
基本上,我可以在PowerShell文档中找到任何转义字符,但均不成功。
答案 0 :(得分:0)
在ini文件中搜索模式时,可以使用正则表达式样式。
我使用了这个测试config.ini:
*=abc
* = cde
**=avc
a=b
c = d
e =
使用此命令,我得到您在问题中描述的行:
findstr /R /C:"^\*[ ]*=.*" config.ini
结果是:
*=abc
* = cde
这里是正则表达式的描述:^
表示行的开头。然后,您要求一个*
。您必须对其进行转义,因此必须使用\*
。之后,可以有任意数量的空格,因此您已将其放入正则表达式类中,即[ ]*
([<space>]*
)。在空格之后,有一个等号=
,在等号之后,可以有任何其他字符,因此.*
。