了凡 2019-04-02
redis命令行查看中文不乱码
Redis在使用命令行操作时,如果查看内容中包含中文,会显示16进制的字符串”\xe4\xb8\xad\xe5\x9b\xbd”
127.0.0.1:6379> set k1 '中国' OK 127.0.0.1:6379> get k1 "\xe4\xb8\xad\xe5\x9b\xbd"
如果想要看到的中文不乱码,解决方案有两种:
一、使用echo
$ echo -e `redis-cli get k1` 中国
二、redis-cli 后面加上Craw
$ redis-cli --raw 127.0.0.1:6379> get k1 中国
下面给大家详细介绍关于Redis利用十六进制字符串处理的相关示例,如下:
Redis的在使用的过程中有中文的内容都是以十六进制的形式存储的,所以在使用redis-cli客户端连接时如果是内容中有中文的部分都会以十六进制的形式显示,因此查询redis中的数据内容时就有点不太方便,其实在Unix系统下可以把查到的十六进制内容用echo中的“-e“参数用来转换所查询到的十六进制内容,如下:
127.0.0.1:6379> get test1 "test\xe6\x8c\x81\xe4\xb9\x85\xe5\x8c\x96" 127.0.0.1:6379> quit [root@localhost ~]# echo -e "test\xe6\x8c\x81\xe4\xb9\x85\xe5\x8c\x96" test持久化
此外在使用redis-cli客户端时还可以使用redis-cli客户端本身的“--raw”参数在连接redis时用来输出原始内容:
[root@localhost ~]# redis-cli --raw 127.0.0.1:6379> get test1 test持久化
总结