bash - curl -d json 里面的 var 无效
问题描述
我有一个 bash 脚本,它可以像这样使用 sed 回显并执行一些文本替换
var=$(<file)
该文件看起来像这样
{
"name": "John",
"address": "Somewhere"
}
当我echo "$var"
(保留格式)时,它看起来很好。当我使用curl -d '@test_file_with_json'
服务器时也接受它但是当我这样做时curl -d '$var'
它被拒绝并且API告诉我json无效。
起初我以为是因为单引号,但我尝试了-d '"$var"'
,-d "$var"
以及其他各种组合,但我无法让它工作。
我确定这是非常明显的事情,但我怎样才能让 var 中的数据发布?实际内容很长(几百行),因此将其全部直接放在 curl 命令中是不切实际的。
解决方案
推荐阅读
- python - 电报机器人识别 URL
- android - SSL 握手中止 - Android Azure 连接
- kubernetes - 为什么 kubernetes 网络驱动程序会编织生成大日志文件
- abstract-class - 抽象类 - 如何解决抽象类错误?
- java - 如何使用 Kotlin 更新 Firestore 中对象数组中的数据?
- pyspark - PySpark 在转换期间创建嵌套结构
- python - Eve - 可以在查询中找到项目的页码吗?
- javascript - 如何为多选下拉列表附加 AJAX
- mysql - 解释查询的行列中的值越低是否意味着查询速度越快
- python - 根据索引从列表项中删除引号