$json = ConvertFrom-Json "{key:true}"
$key = "key"
Write-Host $json[$key]
Я бы хотел, чтобы это было верно, но это не так. Я знаю, что $json.key
будет работать. Это можно сделать?PowerShell: извлекает объект JSON по переменному значению
$json = ConvertFrom-Json "{key:true}"
$key = "key"
Write-Host $json[$key]
Я бы хотел, чтобы это было верно, но это не так. Я знаю, что $json.key
будет работать. Это можно сделать?PowerShell: извлекает объект JSON по переменному значению
Если вы знаете, что $json.key
будет работать, тогда почему вы переключаетесь между точками в квадратные скобки? Все они будут работать:
$json = ConvertFrom-Json "{key:true}"
$key = "key"
Write-Host $json.$key
Write-Host $json.$($key)
Write-Host $json."$key"
Вы можете ссылаться на него с использованием точечной нотации с вашими переменными.
$json.$key
Так что в вашем Write-Host вам потребуется подвыражения, если вы использовали кавычки в вашей записи-хоста
Write-Host "Key is: $($json.$key)"
Вы пытались использовать обозначение массива и возвращает нуль.
Спасибо за нижний план ... действительно. Это дало мне знать, что я допустил ошибку при наборе текста. – Matt
'key' читается откуда-то еще. '$ json. $ key' отлично работает ... Я понятия не имел, что PS это понимает. Благодаря! – Laoujin