Redis中批量清除Key脚本
#! /usr/bin/env bash
# scriptName remove_redis_keys.sh
REDIS_CLI=/usr/local/redis/bin/redis-cli
if [ ${#} -eq 0 ];then
echo "missing params, please tell me which keys would be remove!"
exit;
fi
HOST='127.0.0.1'
PORT=6379
keyPrefix=''
if [ ${#} -gt 2 ];then
HOST=$1
PORT=$2
keyPrefix=$3
elif [ ${#} -gt 1 ];then
HOST=$1
keyPrefix=$2
else
keyPrefix=$1
fi
echo "connecting to ${HOST}....."
sleep 5
CLIENT="${REDIS_CLI} -h ${HOST} -p ${PORT}"
#列出所有的keys
${CLIENT} keys ${keyPrefix}
#开始删除
${CLIENT} keys ${keyPrefix} | xargs ${CLIENT} del
echo "redis_key:[${keyPrefix}] have been removed....."
使用
chmod u+x remove_redis_keys.sh
#指定IP和端口, 删除U_开头的key
remove_redis_keys.sh 127.0.0.1 6380 U_*
#指定IP, 使用默认端口6379, 删除U_开头的key
remove_redis_keys.sh 127.0.0.1 U_*
#使用默认IP127.0.0.1,以及端口6379, 删除U_开头的key
remove_redis_keys.sh U_*