我尝试运行test.sh脚本时,curl总是报错:
curl: (6) Couldn't resolve host 'application'
test.sh:
#!/bin/sh
CT="Content-Type:\ application/json"
TEST="curl http://127.0.0.1 -H $CT"
echo $TEST
RESPONSE=`$TEST`
echo $RESPONSE
但是,如果我只是从控制台运行以下命令,一切都很好:
curl http://127.0.0.1 -H Content-Type:\ application/json
您好,请问脚本中出了什么问题,我理解是与“空格”转义有关,但不知道该如何修复。
此外,我尝试过以下组合,但结果相同:
CT="Content-Type: application/json"
TEST="curl http://127.0.0.1 -H \"$CT\""
更新:
bash / dash 仅在服务器上可用。(/bin/sh --> bash)
GNU bash, version 4.2.10(1)-release (x86_64-pc-linux-gnu)
curl -V
输出 - Kufsh <script>
的情况下执行。 - Kuf