我想使用 redis-cli 将一个 utf-8 字符“\u042e”设置到 redis。
我试过:
127.0.0.1:6379> set test "\u042e"
OK
127.0.0.1:6379> get test
"u042e"
然后我尝试了:
127.0.0.1:6379> set test '\u042e'
OK
127.0.0.1:6379> get test
"\\u042e"
和
127.0.0.1:6379> set test `\u042e`
OK
127.0.0.1:6379> get test
"`\\u042e`"
但我想要的是(我从 golang 设置的):
127.0.0.1:6379> get test
"\u042e"
即使我添加 --raw,也不起作用。
最后我尝试了:
127.0.0.1:6379> set test Ю
OK
127.0.0.1:6379> get test
"\xd0\xae"
看起来它们是相同的字节,但我不太确定。
我可以使用 redis-cli 直接将 utf-8 字符设置到 redis 中吗?
最佳答案
默认情况下,redis-cli
格式化命令的输出 - 在您的例子中,它以 '\xNN' 的形式打印对转义的 UTF-8 字符进行编码的字节。
您可以覆盖此行为并让 cli 使用“--raw”开关打印原始输出,如下所示:
$ redis-cli --raw
127.0.0.1:6379> SET test Ю
OK
127.0.0.1:6379> GET test
Ю
关于utf-8 - 如何使用redis-cli将utf-8字符设置到redis中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58166445/