redis集群批量删除模糊key shell脚本

redis_list=("redis-cluster:16301" "redis-cluster:16302" "redis-cluster:16303")
password='password'
redis_comm=/home/woapp/middleware/redis-cluster/redis-3.2.1/src/redis-cli
read -p "请输入要删除的key格式:" searchkey
read -p "是否显示查询的所有key(Y/N): " searchFlag

if [ $searchFlag = "Y" ] || [ $searchFlag = "y" ]; then
    for info in ${redis_list[@]}
    do
        echo "开始查询:$info"
        ip=`echo $info | cut -d : -f 1`
        port=`echo $info | cut -d : -f 2`
        $redis_comm -c -h $ip -p $port -a $password  keys $searchkey
    done
fi

read -p "确定删除(Y/N):" runCommand
if [ $runCommand = "Y" ] || [ $runCommand = "y" ]; then
    for info in ${redis_list[@]}
    do
        echo "开始执行:$info"
        ip=`echo $info | cut -d : -f 1`
        port=`echo $info | cut -d : -f 2`
     $redis_comm -c -h $ip -p $port -a $password  keys $searchkey | xargs -i ./redis-cli -h $ip -p $port -a $password  del {}
    done
    echo "完成"
fi

你可能感兴趣的:(linux)