【发布时间】:2018-08-16 01:07:02
【问题描述】:
我有一个非常简单的 bash 脚本,其中包含三个命令。
第一个命令从最后一次 git 提交中删除第一个单词,第二个命令尝试对 api 端点进行 POST 调用,将相同的变量作为调用的一部分,第三个命令只是打印变量,以确保其正常工作。请看下面的代码
SOMETHING=$(git log -1 --pretty=%B | head -n1 | sed -e 's/\s.*$//' | cut -d ' ' -f1)
curl -X POST \
http://www.someurl.com/ \
-H 'Cache-Control: no-cache' \
-d '{"item":"$SOMETHING"}'
echo "variable was $SOMETHING"
当我运行该 bash 脚本时,我收到来自服务的响应,说 XML 中的“项目未正确设置”,但它确实正确地回显了正确的变量。所以我知道第一行是有效的。如果我复制该 curl 命令并将其粘贴到 bash 中,将 $SOMETHING 替换为实际值,它就可以正常工作。
【问题讨论】: