カールを使用した Bash 変数

カールを使用した Bash 変数

次のコマンドを実行すると動作し、1つの項目が返されます。

オンライン

curl -X POST -d 'tag=jazz' -d 'state=queensland' http://all.api.radio-browser.info/json/stations/search

ただし、BashスクリプトでRESを使用すると、-d 'tag=jazz' -d 'state=queensland'他の結果が表示されます。

read -rp "Write your quiry " RES
    echo "$RES"
    curl -X POST "$RES" http://all.api.radio-browser.info/json/stations/search

私はこれを試しましたが、成功しませんでした。

curl -X POST http://all.api.radio-browser.info/json/stations/search <<EOF
    "$RES"
EOF

Bashスクリプトで変数を使用するには?

答え1

次のような配列を使用します。回答前の質問の場合:

read -rp 'Write your query ' -a RES
curl -X POST "${RES[@]}" http://all.api.radio-browser.info/json/stations/search

パラメータは文字通り配列に保存されるため、一重引用符なしでパラメータを入力してください。

-d tag=jazz -d state=queensland

関連情報