redis - 使用模式删除 Redis 键

标签 redis redis-cli redisclient

我正在使用 Redis 哈希集以下列格式存储数据:

hset b1.b2.b3 name test

现在我想删除这个 key ,所以我使用以下格式:

del b1.b2.*

但它不起作用,所以如何使用模式删除 Redis key ?

最佳答案

Redis 不提供任何删除批量键的方法。但是 redis-cli 和 xargs 可以用来实现你想要做的事情。请参阅以下命令:

127.0.0.1:6379> hset b1.b2.b3 name test
(integer) 1
127.0.0.1:6379> hgetall b1.b2.b3
1) "name"
2) "test"
$ redis-cli --scan --pattern b1.b2.* | xargs redis-cli del
(integer) 1
$ redis-cli
127.0.0.1:6379> hgetall b1.b2.b3
(empty list or set)

我们正在使用“--scan”扫描 redis 以查找模式,并使用 xargs 方法将输出再次提供给 redis-cli whcih 结合扫描结果中的所有键,最后我们使用“del”删除所有键命令。

关于redis - 使用模式删除 Redis 键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65983358/

相关文章:

node.js - 如何使用node.js将redis缓存数据保存到mongodb中

c# - 将发布/订阅与 sider redis C# 客户端一起使用

lua - 如何从redis中的多个哈希中获取

redis - 不存在 key 的 ServiceStack Redis 客户端行为

macos - 如何在 Mac 上使用 TLS 构建 Redis 6

redis - 将 redis 客户端列表保存到文件

redis - 是否可以看到redis处理的所有请求?

redis - 将 Redis 查询输出保存到文件

c++ - 空闲期后 Redis PUBSUB 连接问题

ruby-on-rails - Rails ActionCable 中出现 "Unable to find subscription with identifier"的原因是什么?