非常に初心者の質問。 PowershellでJSONから特定の値を取得しようとしています。具体的には、サービスを一覧にしたいと思います。TEST00000とFAKEのみ。PowershellでJSONから値を取得
私は以下のスクリプトを実行すると、私はこれを取得:
TEST00000 FAKE
--------- ----
@{Enabled=True; Processed=2; Sent=3; Failed=4; Downloaded=5} @{Enabled=True}
はどのようにして唯一のサービスのリストを得ることができますか?
もっと重要なことに、キー/値がのサービスだけを一覧表示するにはEnabled = Trueその中に存在しますか?これは関係なく、あなたのJSON内のサービス名の、あなたが動的に名を取得できるようにする必要があり
$JSON = '{
"Envs": {
"DEV": {
"Services": {
"TEST00000": {
"Enabled": true,
"Processed": 2,
"Sent": 3,
"Failed": 4,
"Downloaded": 5
},
"FAKE": {
"Enabled": true
}
}
}
},
"Component": {
"Digger": {
"Envs": {
"DEV": {
"DownloadE": 4
}
}
}
}
}'
$jsonobj = ConvertFrom-Json -inputObject $JSON
$jsonobj.Envs.DEV.Services
この返事をありがとう、これは面白いです、私はこの情報を探すのに多くの時間を費やしました、どうやってこれを学びましたか?このことについて、私はどこでもっと読んでいますか? (またはPSのヘルプコンテンツを使用する技術を学んでいるのですか?) – ToastMan
@ToastMan私は個人的にDon Jones Month of Lunchesの書籍を使い始めました。隠された 'psobject'プロパティについて知っているので、私は誰かの答えから拾い上げました(誰が覚えていないか)。 – BenH
最後の部分はうまくいかないようです:$ _ |とにかく(-eq 'false'で)サービスをリストアップします。 – ToastMan