如何在 Windows shell 中转义管道字符?

如何在 Windows shell 中转义管道字符?

我需要指定一个包含|字符的正则表达式来findstr命令:

processtext.exe | findstr /R "Hello|Bye"

我该如何逃避它?\|不起作用。引号修复了管道问题,但正则表达式不匹配,尽管单独搜索“Hello”和“Bye”可以匹配。我对旧版 shell 的解决方案感兴趣,而不是 powershell。

答案1

如果仍然有人感兴趣,只需用空格替换管道,例如 findstr /R“Hello Bye”。

答案2

我找到了一个解决方案,可以从 cmd.exe 运行 powershell 命令,如下所示:

C:\GitLab-Runner>powershell get-service *gitlab* ^| ft

得到以下输出

Status   Name               DisplayName
------   ----               -----------
Stopped  gitlab-runner      gitlab-runner

相关内容