如何在单引号内的双引号内转义变量?

时间:2019-08-06 11:21:52

标签: bash shell variables escaping

我尝试读取变量的输入,然后在REST API调用数据字段中使用此变量,但是我无法在引号内正确转义该变量。

我曾尝试在单引号之前,双引号之前以及同时在单引号和双引号之前使用反斜杠。

token=$(curl $VAULT_ADDR/v1/auth/ldap/login/$username -d '{"password": "$password"}' -k | jq '.auth.client_token')

echo token

到目前为止,它会将$ password读取为字符串。无法验证,因为密码错误,则令牌等于null。我试图在双引号中使用变量$ password的值,因为数据字段应该采用JSON格式。

password=hunter2

'{"password": "$password"}'变为

'{"password": "hunter2"}'

如果我对密码进行硬编码,密码将成功

1 个答案:

答案 0 :(得分:0)

'{"password": "'$password'"}'