redis 正则匹配value_Redis 正则匹配 key值

本文介绍了如何在Redis中使用`KEYS`命令进行正则匹配查找Key,以及利用`redis-cli`工具进行正则匹配操作。`KEYS`命令根据模式匹配数据库中的Key,但需要注意其在大量Key时可能影响性能。另外,文章还提到了通过`--scan`选项结合`--pattern`来更高效地搜索Key,并提供了统计特定类型Key数量的方法。
摘要由CSDN通过智能技术生成

redis help

redis-cli --help

redis-cli 4.0.9

Usage: redis-cli [OPTIONS] [cmd [arg [arg ...]]]

-h Server hostname (default: 127.0.0.1).

-p Server port (default: 6379).

-s Server socket (overrides hostname and port).

-a Password to use when connecting to the server.

-u Server URI.

-r Execute specified command N times.

-i When -r is used, waits seconds per command.

It is possible to specify sub-second times like -i 0.1.

-n Database number.

-x Read last argument from STDIN.

-d Multi-bulk delimiter in for raw formatting (default: \n).

-c Enable cluster mode (follow -ASK and -MOVED redirections).

--raw Use raw formatting for replies (default when STDOUT is

not a tty).

--no-raw Force formatted output even when STDOUT is not a tty.

--csv Output in CSV format.

--stat Print rolling stats about server: mem, clients, ...

--latency Enter a special mode continuously sampling latency.

If you use this mode in an interactive session it runs

forever displaying real-time stats. Otherwise if --raw or

--csv is specified, or if you redirect the output to a non

TTY, it samples the latency for 1 second (you can use

-i to change the interval), then produces a single output

and exits.

--latency-history Like --latency but tracking latency changes over time.

Default time interval is 15 sec. Change it using -i.

--latency-dist Shows latency as a spectrum, requires xterm 256 colors.

Default time interval is 1 sec. Change it using -i.

--lru-test Simulate a cache workload with an 80-20 distribution.

--slave Simulate a slave showing commands received from the master.

--rdb Transfer an RDB dump from remote server to local file.

--pipe Transfer raw Redis protocol from stdin to server.

--pipe-timeout In --pipe mode, abort with error if after sending all data.

no reply is received within seconds.

Default timeout: 30. Use 0 to wait forever.

--bigkeys Sample Redis keys looking for big keys.

--hotkeys Sample Redis keys looking for hot keys.

only works when maxmemory-policy is *lfu.

--scan List all keys using the SCAN command.

--pattern Useful with --scan to specify a SCAN pattern.

--intrinsic-latency Run a test to measure intrinsic system latency.

The test will run for the specified amount of seconds.

--eval Send an EVAL command using the Lua script at .

--ldb Used with --eval enable the Redis Lua debugger.

--ldb-sync-mode Like --ldb but uses the synchronous Lua debugger, in

this mode the server is blocked and script changes are

are not rolled back from the server memory.

--help Output this help and exit.

--version Output version and exit.

Examples:

cat /etc/passwd | redis-cli -x set mypasswd

redis-cli get mypasswd

redis-cli -r 100 lpush mylist x

redis-cli -r 100 -i 1 info | grep used_memory_human:

redis-cli --eval myscript.lua key1 key2 , arg1 arg2 arg3

redis-cli --scan --pattern '*:12345*'

(Note: when using --eval the comma separates KEYS[] from ARGV[] items)

When no command is given, redis-cli starts in interactive mode.

Type "help" in interactive mode for information on available commands

and settings.

keys help

http://doc.redisfans.com/key/keys.html

KEYS pattern

查找所有符合给定模式 pattern 的 key 。

KEYS * 匹配数据库中所有 key 。

KEYS h?llo 匹配 hello , hallo 和 hxllo 等。

KEYS h*llo 匹配 hllo 和 heeeeello 等。

KEYS h[ae]llo 匹配 hello 和 hallo ,但不匹配 hillo 。

特殊符号用 \ 隔开

KEYS 的速度非常快,但在一个大的数据库中使用它仍然可能造成性能问题,如果你需要从一个数据集中查找特定的 key ,你最好还是用 Redis 的集合结构(set)来代替。

可用版本:>= 1.0.0时间复杂度:O(N), N 为数据库中 key 的数量。返回值:符合给定模式的 key 列表。

redis> MSET one 1 two 2 three 3 four 4 # 一次设置 4 个 key

OK

redis> KEYS *o*

1) "four"

2) "two"

3) "one"

redis> KEYS t??

1) "two"

redis> KEYS t[w]*

1) "two"

redis> KEYS * # 匹配数据库内所有 key

1) "four"

2) "three"

3) "two"

4) "one"

redis 统计某类key值的数量

统计所有的keys

redis-cli -r keys * | wc -l

统计某类key值的数量,如 h*llo 匹配 hllo 和 heeeeello 等。

redis-cli -r keys h*llo | wc -l

统计key值的数量正则写法

redis-cli --scan --pattern '*:12345*' | wc -l

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值