在我的设置中,该info命令显示以下内容:
[keys] => 1128
[expires] => 1125
Run Code Online (Sandbox Code Playgroud)
我想找到没有失效日期的那3个密钥.我已经检查过文档无济于事.有任何想法吗?
Way*_*Lue 53
从我现在找不到的网站修改.
redis-cli keys "*" | while read LINE ; do TTL=`redis-cli ttl "$LINE"`; if [ $TTL -eq -1 ]; then echo "$LINE"; fi; done;
Run Code Online (Sandbox Code Playgroud)
编辑:注意,这是一个阻止调用.
Wayne Lue的答案运行了,但是使用Redis警告的Redis KEYS命令:
警告:将KEYS视为命令,仅应格外小心地用于生产环境。在大型数据库上执行时,可能会破坏性能。
Redis文档建议使用SCAN。
redis-cli --scan | while read LINE ; do TTL=`redis-cli ttl "$LINE"`; if [ $TTL -eq -1 ]; then echo "$LINE"; fi; done;
Run Code Online (Sandbox Code Playgroud)
如果要扫描特定的密钥模式,请使用:
redis-cli --scan --pattern "something*"
Run Code Online (Sandbox Code Playgroud)