redis cli在未知文件描述符上返回(nil)

lztngnrs  于 2021-06-09  发布在  Redis
关注(0)|答案(0)|浏览(308)

我正在尝试运行一个简单的rediscli脚本,它循环遍历一些哈希Map,并报告哪些哈希Map缺少某些键。如果我在终端上运行命令 (nil) 任何时候它遇到一个没有该键的记录,但是我在通过grep或任何东西解析结果时遇到了困难。

$ redis-cli --scan --pattern 'users' | xargs -I % redis-cli HGET % email
(nil)
$ redis-cli --scan --pattern 'users' | xargs -I % redis-cli HGET % email | rg -iF '(nil)'

最后一个命令没有接收到任何内容,因此我认为它一定是通过标准错误,并尝试了以下操作:

$ redis-cli --scan --pattern 'users' | xargs -I % redis-cli HGET &> out

$ redis-cli --scan --pattern 'users' | xargs -I % redis-cli HGET |& hexdump
0000000 000a
0000001
$ redis-cli --scan --pattern 'users' | xargs -I % redis-cli HGET 3> out
$ redis-cli --scan --pattern 'users' | xargs -I % redis-cli HGET 4> out

但还是找不到 (nil) redis输出的字符串,我没有 noclobber 已打开。有什么办法解决这个问题吗?它必须通过一些文件描述符,但我知道它不是1-4,现在我不知道如何继续。
我确信有更好的方法来获取我想要的关于redis记录的信息,但我还是很想完全出于好奇去弄清楚。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题