我有一个shell脚本,我将一些参数传递给。在这个脚本中,我构建了一个简单的json字符串。
这是shell脚本A:
firstname=${1}
lastname={$2}
email={$3}
json='{"firstname":"'"$firstname"'","lastname":"'"$lastname"'","email":"'"$email"'"}'
# do web request here
这可以通过shell脚本B调用,如下所示:
firstname="aa"
lastname="bb"
email="cc@cc.cc"
./scriptB.sh ${firstname} ${lastname} ${email}
将此json发布到服务器后,json中的所有值都以大括号括起来:{aa},{bb},{cc@cc.cc}。在这种情况下,服务器不能成为问题。
我认为这与不正确的转义或错误使用字符串引号有关?
答案 0 :(得分:0)
在您的第一个脚本中{
和}
不一致且不加引号。尝试:
firstname="${1}"
lastname="${2}"
email="${3}"