如何在Redis控制台中读取Redis二进制值



我在Redis条目中存储了一个包含5个字节的字节数组。使用客户端库进行写和读操作是可行的,也是预期的,但当我尝试在Redis控制台中读取值时,我会得到一些我不知道如何解释的东西:

>get keyHere
"x02x8ex8bx0cb"

有一点我显然不明白,因为x0cb不是字节的十六进制值,并且只有4个x(我预计5个字节有5个(。

我很困惑,决定做一个实验。我自学了如何设置原始字节;我将条目的值设置为"0";\x01\x07";并读回。我期望";\x01\x07";但是读取值显示为"0";\x01\a";。

>set "3" "x01x07"
OK
>get 3
"x01a" 

我应该如何在Redis控制台中读取Redis缓存中的条目以查看原始字节?

如果字节不可打印,reds-cli将打印十六进制格式,否则将打印c-escpaped序列。

因为\xcb不是字节的十六进制值,并且只有4\x(我预计5个字节为5个(

前4个字节不可打印,因此以十六进制格式打印。最后一个字节是可打印的b

我期待着"\x01\x07";但是读取值显示为"0";\x01\a";。

x07的c转义序列是a,并且是可打印的。

我应该如何在Redis控制台中读取Redis缓存中的条目以查看原始字节?

如果需要原始字节(可能无法打印(,则可以在运行redis cli时指定--raw选项。

最新更新