我发现使用JSON的工作比其他脚本语言要复杂得多,所以我忍不住想念我缺少一种更简单的方法来执行此操作。有了这个json.txt
文件:
{"key":"value","key1":"a string with lots of spaces"}
我有此工作的PowerShell代码:
$SECRETS_FILE = 'C:\Users\Administrator\Documents\json.txt'
$data = Get-Content -Raw -Path $SECRETS_FILE | ConvertFrom-Json
$data.PSObject.Properties | ForEach-Object {
if ($_.Name -eq "key") {
$value = $_.Value
cli_cmd value=$value
}
}
我想做这样的事情:
$SECRETS_FILE = 'C:\Users\Administrator\Documents\json.txt'
$data = Get-Content -Raw -Path $SECRETS_FILE | ConvertFrom-Json
cli_cmd value=$data["key"]
我在网上看到了许多代码示例,这些示例使用$object["key"]
格式引用PowerShell对象中的键,但是在我的情况下我什么也没得到。在上面的示例中,$data["key"]
返回null,$data.keys
返回null。我很茫然。我不相信引用数组中键的唯一方法是遍历整个数组进行字符串匹配。