【发布时间】:2020-01-02 20:51:09
【问题描述】:
我想使用ripgrep在文本文件中查找字符串"Hello(Hello 以双引号开头)。
通常,在 Bash 或 ZSH 中,这将通过使用反斜杠转义或用单引号括起来来工作:
rg \"Hello
rg '"Hello'
但是,在 MS Windows(Powershell 和 CMD)中,我已经尝试过这些,但这些都不起作用:
rg \"Hello
rg '"Hello'
rg `"Hello
rg '`"Hello'
有没有办法在 MS Windows 中使用 ripgrep 转义单引号或双引号?
【问题讨论】:
-
是什么阻止您使用内置的 Windows 方法和/或工具而不是 ripgrep?
-
@Compo:使用 ripgrep 的一个令人信服的理由是它的速度;另一个是其友好的输出格式(突出显示匹配的行部分)。虽然 PowerShell 7.0 中的
Select-String现在也有这样的突出显示,但速度要慢得多。在 PowerShell 中使用Select-String可以避免令人头疼的问题,但如果您调用findstr.exe(其正则表达式支持较差),您将面临同样的问题。
标签: powershell cmd ripgrep