我正在尝试运行一个简单的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记录的信息,但我还是很想完全出于好奇去弄清楚。
暂无答案!
目前还没有任何答案,快来回答吧!