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

时间:2018-11-27 15:16:31

标签: shell redis special-characters

我在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

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

您不需要在变量内打勾:

Mary
   Patricia
       Barbara
           Betty
       Helen
       Maria
           Keren
           Carol
   Lisa