什么是Powershell相当于Pythons sys.stdin.read()?

时间:2017-06-22 09:50:34

标签: python powershell stdin

我们在Windows上使用Splunk,在最新版本中,我们现在需要将脚本警报迁移到自定义警报。简而言之,新框架不再使用位置参数,而是使用有效负载(stdin)。如果使用Python,则很简单,如Spunk documentation

所示

settings = json.loads(sys.stdin.read())

我无法弄清楚如何使用Powershell做同样的事情。 cmdlet读取主机仅从键盘读取stdin。我还找到了使用cmdlet get-content从stdin读取的示例,但是我在使用现有文件时只找到了示例

Get-Content c:\scripts\test.txt

我可能需要做一些与this accepted answer中描述的相关的事情。

$psi = New-Object System.Diagnostics.ProcessStartInfo;
....
....

但是我不想发送给另一个进程的stdin,我想阅读另一个进程发送到“我的”进程的函数,即Powershell脚本。

1 个答案:

答案 0 :(得分:2)

使用automatic variable $input

$settings = $input | Out-String | ConvertFrom-Json