redis-cli批量scan删除

发布时间 2023-11-10 15:47:44作者: pinenuts

redis-cli命令行删除数据

最近因为需要对redis部分存量数据执行删除,因为存量数据量比较大且正在提供服务,需要使用scan扫描,删除的时候需要判断存储的业务状态对于status为0的删除,记录一下处理命令,用于备忘

./redis-cli -c -h 172.x.x.x -p xxxx -a xx --scan --pattern "xxxxx:*" | xargs -L 1 -I key sh -c "./redis-cli -c -h 172.x.x.x -p xxxx -a x get key | xargs -n 1 -I val echo key_val" |grep "status:0}"  |awk -F '_' '{print $1}' |xargs -L 1 ./redis-cli -c -h 172.x.x.x -p xxxx -a xx del

xargs -L 1 指定分行处理 -I(大写的i) 指定变量名
awk -F 指定分隔符 '{print $1}' 保留第一段