2016-02-05 50 views
0

我正在使用installr API。 我想通過腳本來完成以下捲曲要求:將參數捲曲調用變量不起作用

curl -H "X-InstallrAppToken: mytoken" https://www.installrapp.com/apps.json/ \ 
    -F '[email protected]'$APKPATH \ 
    -F 'releaseNotes=These are my release notes' \ 
    -F 'notify=true' 

和它完美的作品。 然而,當我試圖從一個文件中獲取我的發行說明,像這樣的變量:

RELEASENOTES=`cat "release_notes/test.md"` 
curl -H "X-InstallrAppToken: mytoken" https://www.installrapp.com/apps.json/ \ 
    -F '[email protected]'$APKPATH \ 
    -F 'releaseNotes='$RELEASENOTES \ 
    -F 'notify=true' > /dev/null 

不會在所有的工作中,只有第一個單詞發送。對於其他人,我有錯誤無法解析主機:xxx。

我在這兩個curl請求上做了一個echo,並打印完全相同的東西。 是那個返回特定格式的cat命令?

回答

1

可能是引號和空格的問題。您可以在變量周圍使用雙引號以允許在shell中進行可變擴展。

RELEASENOTES=$(cat "release_notes/test.md") 
curl -H "X-InstallrAppToken: mytoken" https://www.installrapp.com/apps.json/ \ 
    -F "[email protected]${APKPATH}" \ 
    -F "releaseNotes=${RELEASENOTES}" \ 
    -F 'notify=true' > /dev/null