Shell脚本:RedisKey批量删除

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_*
原文地址:https://www.cnblogs.com/one-villager/p/8335476.html