shellを使用してredisのデータを一括削除する
1654 ワード
まずアクティブでないユーザーのuserIdデータを用意し、ファイルとしてこのファイルを読み込みます.
読み込み準備のnot_active_userファイル、not_active_userファイルの1行は削除するユーザidを表し、idに基づいて削除するkeyに組み立てられ、redisにログインして削除します.
ここではxargsを使用します.これはredisのパイプコマンドです.
redisのdelコマンドは正規表現を実行しないため、redis一括削除コマンドを削除できます:keys*|xargs redis_cli del
redisのlistデータ構造にデータを追加するには、次の手順に従います.
ここに接続されているのは1番ライブラリなので、-n 1で、デフォルトは0番ライブラリです.
redisのlistデータ構造のデータを削除するには、次の手順に従います.
redisパイプコマンドについては、このドキュメントを参照してください.
https://blog.csdn.net/oChangWen/article/details/70229666
redisログインについては、このドキュメントを参照してください.
https://www.cnblogs.com/kongzhongqijing/p/6867960.html
#!/bin/bash
users=`cat not_active_user`
for user in $users; do
redis-cli -h redis ip -a redis keys messages:box:$user-0 |xargs redis-cli -h redis ip -a redis del
done
読み込み準備のnot_active_userファイル、not_active_userファイルの1行は削除するユーザidを表し、idに基づいて削除するkeyに組み立てられ、redisにログインして削除します.
ここではxargsを使用します.これはredisのパイプコマンドです.
redisのdelコマンドは正規表現を実行しないため、redis一括削除コマンドを削除できます:keys*|xargs redis_cli del
redisのlistデータ構造にデータを追加するには、次の手順に従います.
#!/bin/bash
if [ $1 == "demo" ];then
redis-cli -h redis -p 6379 -n 1 lpush YOU_ZAN_GOODS_WHITE_LIST $2
elif [ $1 == "load" ];then
redis-cli -h redis -p 6379 -a -n 1 lpush YOU_ZAN_GOODS_WHITE_LIST $2
elif [ $1 == "online" ];then
redis-cli -h redis -p 6379 -a -n 1 lpush YOU_ZAN_GOODS_WHITE_LIST $2
else
echo " "
fi
ここに接続されているのは1番ライブラリなので、-n 1で、デフォルトは0番ライブラリです.
redisのlistデータ構造のデータを削除するには、次の手順に従います.
#!/bin/bash
if [ $1 == "demo" ];then
redis-cli -h redis -p 6379 -n 1 lrem YOU_ZAN_GOODS_WHITE_LIST 0 $2
elif [ $1 == "load" ];then
redis-cli -h redis -p 6379 -a redis -n 1 lrem YOU_ZAN_GOODS_WHITE_LIST 0 $2
elif [ $1 == "online" ];then
redis-cli -h redis -p 6379 -a redis -n 1 lrem YOU_ZAN_GOODS_WHITE_LIST 0 $2
else
echo " "
fi
redisパイプコマンドについては、このドキュメントを参照してください.
https://blog.csdn.net/oChangWen/article/details/70229666
redisログインについては、このドキュメントを参照してください.
https://www.cnblogs.com/kongzhongqijing/p/6867960.html