2017-01-31 5 views
0

シェルスクリプトの新機能です。シェル:一重引用符で囲まれた可変拡張子

私は次のスクリプトがあります:私は$outの値が「メッセージ」を交換したい

out="FAILURE" 
curl -X POST -d 'json={"json":"message"}' http://localhost:8888/json.tail.test 

を。私はさまざまな方法を試しましたが、それはできませんでした。誰かが私に示唆してくれる?

答えて

0

"message"を交換する必要があります。一重引用符は二重引用符を保護しますが、$outのような変数の拡張を抑制します。

+1

ありがとうございました。出来た! –

0

はこれを試してみてください:単一引用符内の$out以外のすべてを囲み、基本的に

out="FAILURE" 
curl -X POST -d 'json={"json":"'$out'"}' http://localhost:8888/json.tail.test 

out="FAILURE" curl -X POST -d 'json={"json": $OUT}' http://localhost:8888/json.tail.test 

は、あなただけの文字通りこれを行う$OUT

+0

これは '$ OUT'部分を展開しません。また、 '$ OUT'の展開は、OPの要求に応じて二重引用符で囲む必要があります。私の答えは下記をご覧ください。 – codeforester

関連する問題