redis - 如何删除带有特殊字符的Redis键?

标签 redis redis-cli

我无法从 Redis 实例中删除 ENV:NAMESPACE:?''?""-last 格式的键。它似乎是被恶意添加的。

尽管它是由 redis-cli --scan 返回的,但我找不到任何方法使用 redis-cli 删除它。在 shell 中转义或使用交互模式的每一种组合都无法找到 key 。

一些尝试包括:

$ redis-cli --scan --pattern 'ENV:NAMESPACE:*-last' | xargs redis-cli del
xargs: unterminated quote
$ redis-cli del ENV:NAMESPACE:?''?""-last
(integer) 0
$ redis-cli del "ENV:NAMESPACE:?''?\"\"-last"
(integer) 0
$ redis-cli del 'ENV:NAMESPACE:?'"'"''"'"'?""-last'
$redis-cli
> del ENV:NAMESPACE:?''?""-last
Invalid argument(s)
> del "ENV:NAMESPACE:?''?\"\"-last"
(integer) 0
> del 'ENV:NAMESPACE:?\'\'?""-last'
(integer) 0

有人知道如何实现此目的或删除 key 的合理替代方法吗?

最佳答案

我最终按照 ceejayoz 的建议尝试了 python 客户端。

事实证明,实际的 key 是 b'ENV:NAMESPACE:\xf0\'\'\xf0""-last',我可以直接从那里删除它。

关于redis - 如何删除带有特殊字符的Redis键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46854691/

相关文章:

node.js - Node child_process 没有将所有内容写入标准输出

redis-cli 'sentinel slaves redis-cluster' 返回一个带有密码保护主控的空列表

redis - `redis-cli keys *` 显示空数组,但 `redis-cli keys my_key` 显示 key

redis - 获取redis中存在的所有哈希值

amazon-web-services - AWS Redis 从外部连接

redis - 在 Kubernetes 上运行 Kafka 是一种好方法吗?

php - Redis:通过 channel 的实时数据

redis - 将 ServiceStack.Redis 与 RedisCloud 结合使用

c# - 如何使用日期范围从 Redis (pub/sub) 保存和检索 channel 数据?

php - 在 Redis 中将 JSON 存储为字符串时转义特殊字符