从 Power Shell 管道中获取价值

Get Value from Power Shell Pipeline

我有来自另一个命令输出的数据

testCommand 会打印这样的东西

a: 1
b: test
c: an3

我想 grep 打印 a: 1 的特定 属性 testCommand | findstr 'a' 的值。

但我想提取值 1。找不到路!如果不存在打印默认值 default

如果您将输出中的 : 替换为 =,您可以将其通过管道传输到 ConvertFrom-StringData 并获得一个不错的哈希表:

$values = testCommand
$ValueTable = $values -replace ": ","=" |ConvertFrom-StringData
$ValueTable["a"] # this will return the value "1"