我在 shell 脚本上运行curl 命令时遇到问题。我有一个带有两个美元符号字符的字符串变量,如下例所示:
local auth="$3xLxLBcsKv$zY59kBuIpKeG4q1526phJ9"
我需要将此变量传递给curl 命令。就像下面是我写的但不是工作:
curl --connect-timeout 2 -H 'Extender-Auth: $auth' https://192.168.5.1/1/
但是shell脚本上的写法是错误的。有人可以帮助我如何修改编写使其在 shell 脚本上运行吗?
感谢您的帮助!
使curl可以使用上述选项和值。
使用双引号 - bash 将尝试在所包含的字符串中执行变量替换:
local auth="$3xLxLBcsKv$zY59kBuIpKeG4q1526phJ9"
将尝试扩展“$3”和“$zY59kBuIpKeG4q1526phJ”。第二个很可能是空的,第一个可能是任何东西。
尝试使用单引号,它不执行替换:
local auth='$3xLxLBcsKv$zY59kBuIpKeG4q1526phJ9'
curl --connect-timeout 2 -H 'Extender-Auth: $auth' https://192.168.5.1/1/