Windowsバッチコマンドで.jsonから特定の値を取得したい 以下の.jsonからtypeの値(test2)を取得したい。

Windowsバッチコマンドで.jsonから特定の値を取得したい 以下の.jsonからtypeの値(test2)を取得したい。 [C:\Settings.json] { "name": "test1" "type": "test2" } 簡単にできる方法はございますでしょうか。

Visual Basic11閲覧xmlns="http://www.w3.org/2000/svg">25

ベストアンサー

0

一応powershellで出来ます。 powershell -Command "Get-Content -Path 'Settings.json' -Raw | ConvertFrom-Json | ForEach-Object {echo $_.type}"

その他の回答(1件)

0

お求めの直球回答じゃないです、ごめんなさい。 JSONは、構文規則が定められてます。 https://ja.wikipedia.org/wiki/JavaScript_Object_Notation { "name": "test1", "type": "test2" } でも、改行なしに全部1行で {"name": "test1", "type": "test2"} でも、等価です。 # 質問文に書かれてるのはまちがってて、, (コンマ) が抜けてるけども なので、ちゃんと解釈しようとするときには、 JSON形式をちゃんと解釈できるパーサが必要ですけど、 Windowsなら必ず入ってるJSONパーサコマンド みたいのは、 ないと思う。 なんらかを準備することが避けられない。 各論になります。 そこまで求めない、必ず改行されて1行1個になってる ヤツしか解釈できない前提でいいから、 というのであれば、 ・JSONじゃなくただのテキストファイルとして扱う ・1行ずつ読んで、目的の行だけ拾って... というアドホックなやりかたでも、できるとは思う。 これなら バッチファイル でもできるのかも。 すんません、私は バッチファイル 上っ面しか知りません。 バッチファイルでのアドホックなやりかた をお求めなら、 他回答者さんの回答をお待ちください。

バッチファイル をお望みのようだったんで、 > Windowsなら必ず入ってるJSONパーサコマンド みたいのは、 ないと思う。 と書きました。 バッチファイルじゃなくてもいい、PowerShellスクリプトでも 異存ないというのであれば、可能です。 # 新たになにか追加インストールせずとも。