shell中调用redis相关命令

发布时间:2017-05-25 21:58:51 阅读:1030次

http://blog.chinaunix.net/uid-20776139-id-4868256.html


##场景,研发同事要帮忙提供redis某个库中的所有key和value的对应关系,一个db中
key有好多,手动来肯定会哭的!想到脚本了!
shell下查看Reids的db10中所有key和value的对应:
[root@redis-200 ~]# cat a.sh
#!/bin/sh
/usr/local/bin/redis-cli  -p 9756 <  select 11
keys *
EOF  ###shell中调用redis相关命令
[root@redis-200 ~]# cat c.sh
#!/bin/sh
for var in `cat 11.txt`  ##我将key写到11.txt文件里面了!
do
./d.sh $var | grep -v "OK" > single.txt
echo -e   "$var;\c" >> all.txt
echo -e   "`cat single.txt`" >>all.txt
done
[root@redis-200 ~]# cat d.sh
#!/bin/sh
var=$1
/usr/local/bin/redis-cli  -p 9756 << EOF
select 11
smembers  $var      #写脚本前,我已经从研发那里知道key的类型!
EOF
c.sh中调用d.sh即可获取key和value的对应关系!

  1. 删除redis key:##好东西 ,以前总想用循环实现了,怎么忘记这个了,呵呵
  2. [root@97-247nginx ~]# redis-cli -p 6379 keys zx_117:* | xargs redis-cli -p 6379 del
这个命令比for 循环快多了,在删除大量数据的时候千万不能使用for 循环,太慢了!


如有问题,可以QQ搜索群1028468525加入群聊,欢迎一起研究技术

支付宝 微信

有疑问联系站长,请联系QQ:QQ咨询
下一篇:fread

转载请注明: shell中调用redis相关命令 出自老鄢博客 | 欢迎分享