質問: "hogeだよー" ` curl --request POST \ --url https://api.sendgrid.com/v3/mail/send \ --header 'Authorization: Bearer #{APIKEY}' \ --header 'Content-Type: application/json' \ --data '{"personalizations": [{"to": [{"email": "hoge@hoge.com"}]}], "from": {"email": "hoge@hoge.com"}, "subject": "Hello, World!", "content": [{"type": "text/plain", "value": "#{TEXT}" }]}' ` ``` として、実行を行うと以下のエラーが返されます。 ``` #エラー 文 sh: -c: line 0: unexpected EOF while looking for matching `"' sh: -c: line 1: syntax error: unexpected end of file ``` コードの部分の**"#{TEXT}"** を **"hoge"** と記入するとcurlリクエストが出来ます。 どなたかどうしてエラーになるのか、ご教授いただきたくお願い致します。
回答: これは回答ではありません。 作業方針を提案します。 バッククォートの中に長い文字を直接かくのではなく、つぎのように コマンド列を String 変数に組み立ててから実行するようにします。 デバッグは、組み立てた文字列の内容を puts などで出力して確認をするという方法をとると良いと思います。 ``` TEXT = 'text' command = "echo #{TEXT}" s = `#{command}` ```