0

コマンドラインからcurlを呼び出すbashスクリプトを書いています。残念ながら、curl リクエストの -d セクションに単純な変数を代入する方法がわかりません。

なぜこれが機能しないのですか?

#!/bin/sh

name=$1
test -z $name && echo "Repo name required." 1>&2 && exit 1

curl -u 'metaraine' https://api.github.com/user/repos -d '{"name":"$name"}'

実際には $name の値をデータに代入しません。

4

1 に答える 1

1

これはどうですか?

curl -u 'metaraine' https://api.github.com/user/repos -d "{\"name\":\"$name\"}"

つまり、引用符をエスケープし、{}単純な引用符ではなく二重引用符を使用します。

于 2013-06-01T22:58:25.623 に答える