当前位置:   article > 正文

Redis 批量删除 key 的命令_redis-cli xargs

redis-cli xargs

redis中没有直接根据正则表达式删除key的命令,只有del key1 key2...命令

但是redis中有通过正则表达式获取key的命令:keys "正则表达式"

可以借助于xargs命令实现批量删除key,把查出来的key值当做参数传给del

redis-cli keys "mailspec*" | xargs del

完整命令:

redis-cli -h 172.16.0.233 -p 6379 -a airemoveredispTG8KqfXs6LRl keys matting_api_count:2021-03-* | xargs -r -t -n1 redis-cli -h 172.16.0.233 -p 6379 -a airemoveredispTG8KqfXs6LRl del 

  • 补充1:xargs命令后需加上参数-r,不然当keys的数量为0时,就会报错 (error) ERR wrong number of arguments for ‘del’ command
  • 补充2:xargs命令后需加上参数-n1,不然当集群情况,keys的数量大于1时,可能会报错 (error) CROSSSLOT Keys in request don’t hash to the same slot
  • 补充3:不加-t也可以,加上-t会输出每次删除的内容,不加则不输出删除的内容,但还是会输出每次删除的key的数量
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小舞很执着/article/detail/794080
推荐阅读
相关标签
  

闽ICP备14008679号