我有以下脚本......
我似乎无法使变量起作用
#!/bin/bash
info = 'Help...?'
object='{"attachments": [{"title": "ti1","text": $info }]}'
curl -X POST -H 'Content-type: application/json' --data '$object' https://hooks.slack.com/services/xxxx
exit 0
即使--data '$object'
没有$info
也无法工作......因为Slack API无法读取我的请求。
我该如何解决这个问题?
答案 0 :(得分:1)
在传递shell变量时使用双引号并删除变量赋值中的额外空格。
curl -X POST -H 'Content-type: application/json' --data "$object"
# ^^^^^^^^^^
使用嵌套引号保留JSON语法中的值
info='Help...?'
object='{"attachments": [{"title": "ti1","text": "'"$info"'" }]}'