| 在shell中传入带双引号的变量 |
|---|
| -d ‘{ “username”:“user”, “role”:[“role”] }’ |
| 引入变量a |
|---|
| -d ‘{ “username”:"$a", “role”:[“role”] }’ |
| 出错,JSON格式报错,因为变量带引号被当做字符串标识符 |
| 引号转义 |
|---|
| -d ‘{ “username”:\"$a\", “role”:[“role”] }’ |
| 出错,JSON格式报错,需要将变量标识为文本 |
| 嵌套引号 |
|---|
| -d ‘{ “username”:“\"$a\"”, “role”:[“role”] }’ |
| 正确,但是执行结果出错,变量被当做字符串传入 |
| 正确执行 |
|---|
| -d ‘{ “username”:‘\"$a\"’, “role”:[“role”] }’ |
| 将外部的双引号换成单引号解决两个双引号嵌套内部双引号被识别为文本的问题 |
本文探讨了在Shell环境中如何正确地通过命令行参数传递包含变量的JSON数据,涉及不同引号使用对JSON格式的影响及正确实践。
1902

被折叠的 条评论
为什么被折叠?



