2017-02-21 15 views

答えて

4

あなたはそのためto_entriesを使用することができます。

jq -r 'to_entries[]|"\(.key)=\"\(.value)\""' input.json 

ところで、Javaプロパティにあなたが引用する必要がないファイル値:

jq -r 'to_entries[]|"\(.key)=\(.value)"' input.json 
+0

自分で値を引用する代わりに '@ sh'を使用してください。これは '{" key ":" value ""} "が正しく引用されるようにするために必要です。 ( ''... |" \(。key)= \(。値| @sh) "'')。 – chepner

+0

"@sh"が実際に何を説明してください... – bentzy

+0

@chepner OPはプロパティファイルを書きたいと思っています。これらのファイルは、シェルとは異なる構文規則に従います。実際には二重引用符は必要ありません。さて、オペラはそれらを期待しているようです。 – hek2mgl

0

実際に `to_entries 'と` @sh'フィルタを使用すると、という単純な JSONオブジェクト(質問に記載されているように)でのみ動作します。私の場合(ネストされたjson)、npmのパッケージ "json-to-properties"を使用するようです。

関連する問題