Redis KEYS 命令用于查找所有匹配给定模式 pattern 的 key 。
尽管这个操作的时间复杂度是 O(N),但是常量时间相当小。
例如,在一个普通笔记本上跑 Redis,扫描 100 万个 key 只要40毫秒。
Warning: 生产环境使用 KEYS 命令需要非常小心。在大的数据库上执行命令会影响性能。
这个命令适合用来调试和特殊操作,像改变键空间布局。
不要在你的代码中使用 KEYS 。如果你需要一个寻找键空间中的key子集,考虑使用 SCAN 或 sets。
匹配模式:
h?llo匹配hello,hallo和hxlloh*llo匹配hllo和heeeelloh[ae]llo匹配helloandhallo,不匹配hilloh[^e]llo匹配hallo,hbllo, ... 不匹配helloh[a-b]llo匹配hallo和hbllo
使用 \ 转义你想匹配的特殊字符。
*语法
redis KEYS 命令基本语法如下:
redis 127.0.0.1:6379> KEYS PATTERN
*返回值
数组: 以数组的形式返回匹配模式 pattern 的 key 的列表。
*例子
# 创建一些 key 并赋值
redis>
MSET firstname Jack lastname Stuntman age 35
"OK"# 查找含有 name 的 key redis> KEYS *name*
1) "lastname" 2) "firstname"# 查找以 a 为开头长度为 3 的 key redis> KEYS a??
1) "age"# redis 获取所有的 key 使用 *。 redis> KEYS *
1) "lastname" 2) "age" 3) "firstname"