Bashスクリプトでjsonのキー値ペア値を見つける方法

Bashスクリプトでjsonのキー値ペア値を見つける方法

make s curl呼び出しを使用してbashスクリプトを作成し、jsonドキュメントを取得しようとしています。 jsonドキュメントには名前付きキーがaccess_tokenあり、そのフィールドの値を抽出する必要があります。これは私のJSONドキュメントです

echo $json

{"access_token":"kjdshfsd", "key2":"value"}

私はそれをインストールしていませんjq

ベストアンサー1

短い答え:インストールjq

jsonパーサーなしでjsonを解析しないでください。

これを行うには、次のようにしますjq

echo "$json" | jq -r '.access_token'

またはecho、タブと改行エンコードが拡張されないようにするには、

jq -r -n --argjson data "$json" '$data.access_token'

私が好むJSONパーサーは次のとおりです。JSON、これを使用するには、次のことができます。

echo "$json" | json access_token

メモ:どちらのソリューションも、jsonオブジェクトが例に示されているものとまったく同じ(または少なくともほぼ同じ)であると仮定します。

おすすめ記事