jq を使用して JSON データを解析し、コマンド ライン引数として指定された動的キー値に基づいて値を引き出しています。これが機能することに気付きましたが$v
、一重引用符内でどのように補間されているかについては懐疑的です。'.["\($v)"]'
二重引用符内の式を書き換えることは可能ですか? 私は何を間違っていますか?
次のことを試しても、何らかの理由で機能しません。
recipe_url=$(cat ./*.json | jq -r --arg v "$recipe_key" ".[\"\\($v)\"]")
ただし、これは次のことを行います。
recipe_key='Wilted Greens' # example key to interpolate
recipe_url=$(cat ./*.json | jq -r --arg v "$recipe_key" '.["\($v)"]') # works!