如何在cmd管道中使用powershell命令?

如何在cmd管道中使用powershell命令?

我想在一些较长的 cmd.exe 管道中使用 powershell 的“replace”;如何从 cmd 重定向到 powershell 输入?下面的行不起作用,给出空输出:

c:\>(echo foo && echo bar) | powershell -Command "%{$_ -replace \"f\",\"x\"}"

答案1

基于一些进一步的谷歌搜索结果,添加$input |到 powershell 命令似乎有效,即:

C:\>(echo foo && echo bar) | powershell -Command "$input | %{$_ -replace \"f\",\"x\"}"
xoo
bar

(注意:在 .bat 文件中使用时,%上面的内容显然需要替换为%%

相关内容