如何在curl PUT请求的主体中使用环境变量?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在curl PUT请求的主体中使用环境变量?相关的知识,希望对你有一定的参考价值。
我想做一个使用body中环境变量的curl请求:
curl -XPUT http://${HOST}/create -d'{"user":"${USER}"}'
在此请求中,${HOST}
被环境变量正确替换,但${USER}
不是。我怎样才能更换${USER}
?
答案
Shell参数扩展不会在单引号内发生。您可以关闭单引号并为扩展启动新的双引号:
curl -XPUT http://${HOST}/create -d'{"user":"'"${USER}"'"}'
或者您可以使用双引号:
curl -XPUT http://${HOST}/create -d"{"user":"${USER}"}"
在这两种情况下,您都需要能够相信$USER
不包含"
- 您可能希望首先对其进行消毒:
# This is a Bash extension to POSIX
USER=${USER//"}
以上是关于如何在curl PUT请求的主体中使用环境变量?的主要内容,如果未能解决你的问题,请参考以下文章