用脚本批量执行redis命令

原创 2015年11月19日 20:17:52

如果将命令写到txt文件中,形式为每行一个命令:set key value

 然后用cat example.txt | redis-cli --pipe

会提示All data transferred. Waiting for the last reply...
ERR syntax error
Last reply received from server.
errors: 1, replies: 2


需要将其转换成raw redis protocol形式,然后用unix2dos将文件转换,可以用shell脚本来实现前面的操作,再用cat example.txt | redis-cli --pipe

代码如下:

第一个参数是生成的set key value的文件,每行一个命令

第二个是生成的raw redis protocol文件

#!/bin/bash

if [ $# -lt 2 ]
then
	 echo "Usage: file1 file2"
	 exit -1
fi

FILEIN=$1
FILEOUT=$2

function gen_raw_redis
{
   while read -a col
   do
		proto="${proto}*${#col[@]}\n"
		for ((i=0; i < ${#col[@]}; i++))
		do
			proto="${proto}\$${#col[i]}\n${col[i]}\n"
		done
   done < ${FILEIN}
   
   echo -e ${proto} > ${FILEOUT}

   unix2dos ${FILEOUT}
}

gen_raw_redis


版权声明:本文为博主原创文章,未经博主允许不得转载。

批量执行redis命令

首先将要执行的命令放在一个文本文件中(redis-commons.txt),一条命令一行(命令行的第一个字符最好是空格,因为有可能会出命令行第一个字符丢失) select 1 del "te...
  • Mr_rain
  • Mr_rain
  • 2016年09月12日 11:03
  • 1326

Redis从文件中批量执行命令

在redis中,如果要批量执行某些命令,在redis的redis-cli下,只能一条条的执行指令,实在太麻烦了!  如果把要执行的命令一行行存储到文件中,然后一次性执行完成。 1、创建文件 ...
  • u012689336
  • u012689336
  • 2016年11月25日 15:20
  • 3145

redis日常命令操作

在linux中 批量操作redis中的 keys的方法: 统计个数: redis中名称含有OMP_OFFLINE的key的个数; src/redis-cli keys "*OMP...
  • anttu
  • anttu
  • 2017年06月04日 01:27
  • 336

Redis常用命令

启动 Redis 服务 src/redis-server或者src/redis-server redis.conf src/redis-server redis.conf 1>log.log 2>er...
  • rockstar541
  • rockstar541
  • 2014年06月12日 14:14
  • 148371

用脚本批量执行redis命令

最近在维护一个用redis做缓存的项目时,遇到了产品需要不定时清除用户数据的需要,由于每次要清除的用户数据很多,每次手动删除的话比较繁琐,最后采用了批处理脚本的方式来执行清除的命令 首先将要执行...
  • afeiluo
  • afeiluo
  • 2015年08月06日 14:42
  • 11196

Redis-Shell

Redis Shell 一. redis-cli 1.1 查看redis-cli命令帮助 redis-cli help 查看redis-cli命令帮助 [devuser@iz2ze2ehfv...
  • sunhuiliang85
  • sunhuiliang85
  • 2017年07月15日 19:05
  • 840

Redis常用命令

redis高级应用 1、安全性    设置客户端连接后进行任何操作指定前需要密码,一个外部用户可以再一秒钟进行150W次访问,具体操作密码修改设置redis.conf里面的requirepass属性给...
  • sunboy_2050
  • sunboy_2050
  • 2013年07月06日 06:40
  • 55584

redis学习入门篇--命令集合

参考李子骅《redis入门指南》的第三章的学习总结 1)获得符合规则的key,命令: Keys pattern,如Keys myList* 2)判断键key是否存在:exists key 3)删...
  • cqupt0901
  • cqupt0901
  • 2016年10月11日 18:34
  • 394

redis shell 命令

redis shell command
  • zxkln
  • zxkln
  • 2011年01月05日 12:09
  • 13527

redis中执行大量数据插入操作

Redis管道请求/响应协议和RTTRedis是一种基于客户端-服务端模型以及请求/响应协议的TCP服务。 通常情况下一个请求会遵循以下步骤: - 客户端向服务端发送一个查询请求,并监听Socke...
  • ymrfzr
  • ymrfzr
  • 2016年05月19日 21:49
  • 13120
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用脚本批量执行redis命令
举报原因:
原因补充:

(最多只允许输入30个字)