1. 批量删除redis 缓存
    2. redis-cli -h 192.168.1.84 -p 6379 -a testpasswd keys "app*" | xargs redis-cli -h 192.168.1.84 -p 6379 -a testpasswd del
    3. redis如何清除所有的key 2013-12-12 14:52:18
    4. 分类: NOSQL
    5. redismemcache好的地方之一,如果memcache,恐怕就得关掉重启了。
    6. 1 使用cli
    7. FLUSHDB 清除一个数据库,FLUSHALL清除整个redis数据。
    8. 2 使用shell
    9. redis-cli keys "*" | while read LINE ; do TTL=`redis-cli ttl $LINE`; if [ $TTL -eq -1 ]; then echo "Del $LINE"; RES=`redis-cli del $LINE`; fi; done;
    10. 删除 3600秒之后过期的
    11. redis-cli keys "*" | while read LINE ; do TTL=`redis-cli ttl $LINE`; if [ $TTL -ge 3600 ]; then echo "Del $LINE"; RES=`redis-cli del $LINE`; fi; done;
    12. 删除某些前缀的
    13. redis-cli KEYS "126.com*" | xargs redis-cli DEL
    14. redis-cli keys "*" | while read LINE ; do TTL=`redis-cli ttl $LINE`; if [ $TTL -eq -1 ]; then echo "Del $LINE"; RES=`redis-cli del $LINE`; fi; done;
    15. redis-cli -h 192.168.1.83 -p 6380 -a testpasswd keys "app_*" | xargs redis-cli -h 192.168.1.83 -p 6380 -a testpasswd del
    16. redis-cli -h 192.168.1.83 -p 6380 -a testpasswd keys "app_*" | while read LINE ; do TTL=`redis-cli -h 192.168.1.83 -p 6380 -a testpasswd ttl $LINE`; if [ $TTL -eq -1 ]; then echo "LLEN $LINE"; RES=`redis-cli -h 192.168.1.83 -p 6380 -a testpasswd LLEN $LINE`; fi; done;
    17. redis-cli -h 192.168.1.83 -p 6380 -a testpasswd keys "app_*" | while read LINE ; do TTL=`redis-cli -h 192.168.1.83 -p 6380 -a testpasswd ttl $LINE`; if [ $TTL -eq -1 ]; then echo "Del $LINE"; RES=`redis-cli -h 192.168.1.83 -p 6380 -a testpasswd Del $LINE`; fi; done;
    18. app_smallapp_v2_5_*
    19. //select
    20. redis-cli -h 192.168.1.83 -p 6380 -a testpasswd keys "app_*" | while read LINE ; do TTL=`redis-cli -h 192.168.1.83 -p 6380 -a testpasswd ttl $LINE`; if [ $TTL -eq -1 ]; then echo "expire $LINE"; RES=`redis-cli -h 192.168.1.83 -p 6380 -a testpasswd EXPIRE $LINE 60`; fi; done;
    21. //del
    22. redis-cli -h 192.168.1.83 -p 6380 -a testpasswd keys "app_*" | while read LINE ; do TTL=`redis-cli -h 192.168.1.83 -p 6380 -a testpasswd ttl $LINE`; if [ $TTL -eq -1 ]; then echo "Del $LINE"; RES=`redis-cli -h 192.168.1.83 -p 6380 -a testpasswd Del $LINE`; fi; done;
    23. //ttl
    24. redis-cli -h 192.168.1.83 -p 6380 -a testpasswd keys "app_*" | while read LINE ; do TTL=`redis-cli -h 192.168.1.83 -p 6380 -a testpasswd ttl $LINE`; if [ $TTL -eq -1 ]; then echo "ttl $LINE"; RES=`redis-cli -h 192.168.1.83 -p 6380 -a testpasswd ttl $LINE `; fi; done;
    25. redis-cli -h 192.168.1.83 -p 6380 -a testpasswd keys "app_*" | while read LINE ; do TTL=`redis-cli -h 192.168.1.83 -p 6380 -a testpasswd ttl $LINE`; if [ $TTL -ne -1 ]; then echo "ttl $LINE"; RES=`redis-cli -h 192.168.1.83 -p 6380 -a testpasswd ttl $LINE `; fi; done;
    26. 3 使用lua脚本
    27. 删除所有key
    28. EVAL "return redis.call('del', unpack(redis.call('keys', ARGV[1])))" 0 *
    29. 删除某些key
    30. EVAL "return redis.call('del', unpack(redis.call('keys', ARGV[1])))" 0 126.com*