单机形式批量删除可使用xargs指令如下操作:
redis-cli -h 10.190.104.11 -p 6379 keys "user*" | xargs -i redis-cli -h 10.190.104.11 -p 6379 del {}
如需密码加上-a 参数即可,如需指定某个库加上-n参数即可,例如:
redis-cli -a 密码 -h 10.190.104.11 -p 6379 -n 库号 keys "user*" | xargs -i redis-cli -a 密码 -h 10.190.104.11 -p 6379 -n 库号 del {}
集群形式批量删除:不能直接使用上述形式,否则会报下列错:
Error: CROSSSLOT Keys in request don’t hash to the same slot
需要编辑shell脚本进行删除如下:
新建脚本
touch redis_del.sh
打开家脚本
vim redis_del.sh
编辑脚本内容如下:
#!/bin/bash
redis_comm=/usr/local/redis/bin/redis-cli
redis_ser01=172.18.18.107
redis_ser02=172.18.18.108
redis_ser03=172.18.18.109
#redis库未加密码,不需要使用-a,不指定库,不需要使用-n参数
$redis_comm -c -h $redis_ser01 k