我阅读了所有关于在 PowerShell 中转义字符串的文章,但仍然没有找到能满足我的解决方案。
假设我有一个包含 JSON 字符串的文件 foo.json
。 我需要将 JSON 字符串作为参数传递给一个程序。
在 bash 中,这很好用:
myprogram "$(cat ~/foo.json)"
在 PowerShell 中,当我正常读取文件内容并进行传递时,接收程序会抱怨键和值周围没有引号。
我想到的方法是:
$json = (get-content ~/foo.json | Out-String) -replace '"','""'
myprogram $json
在 PowerShell 中有更简单的方法吗?我已经退回到退出会话,在 bash 中运行命令,然后再次启动会话。
myprogram (Get-Content foo.json -Raw)
读取时,它们不会被改变。 - Theo"
字符的字符串传递给_外部程序_时缺乏引号。 - mklement0