gpt4 book ai didi

使用包含特殊字符的变量的 shell 脚本

转载 作者:可可西里 更新时间:2023-11-01 11:14:49 24 4
gpt4 key购买 nike

我在 shell 脚本中使用 Redis,我正在尝试设置一个键的值

这是我的脚本,运行良好:

:/# redis-cli JSON.SET etat . '{"name":"Eric"}'
Ok

但是当我使用包含我的 Json 的变量时,我得到了:

:/# json="'{\"name\":\"Erci\"}'"
:/# ehco $json
'{"name":"Eric"}'
:/# redis-cli JSON.SET etat . $json
(error) ERR wrong number of arguments for 'JSON.SET' command

我试过了:

:/# redis-cli JSON.SET etat . ${json}
(error) ERR wrong number of arguments for 'JSON.SET' command

和:

:/# redis-cli JSON.SET etat . "$json"
(error) ERR JSON lexer error SPECIAL_EXPECTED at position 26

有人可以帮忙吗?

最佳答案

您不需要变量内的单个刻度:

$ json="{\"name\":\"Erci\"}"
$ redis-cli JSON.SET etat . "$json"
OK
$ redis-cli JSON.GET etat
"{\"name\":\"Erci\"}"

关于使用包含特殊字符的变量的 shell 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53502714/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com