Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用redis cli执行批命令_Redis - Fatal编程技术网

使用redis cli执行批命令

使用redis cli执行批命令,redis,Redis,我有一个很长的redis命令文本文件,需要使用redis命令行界面执行: e、 g 等等 我似乎想不出一种方法可以比一次一个更快地输入命令。有几十万行,所以我不想把它们都堆成一个DEL命令,它们也不需要同时运行。下面的代码适用于我在mac上的redis 2.4.7 ./redis-cli < temp.redisCmds 那能满足你的要求吗?或者,您想看看是否有一种方法可以通过编程更快地完成此操作?redis cli-pipe可用于大规模插入。它从2.6-RC4开始提供,并在Redis

我有一个很长的redis命令文本文件,需要使用redis命令行界面执行:

e、 g

等等


我似乎想不出一种方法可以比一次一个更快地输入命令。有几十万行,所以我不想把它们都堆成一个DEL命令,它们也不需要同时运行。

下面的代码适用于我在mac上的redis 2.4.7

./redis-cli < temp.redisCmds
那能满足你的要求吗?或者,您想看看是否有一种方法可以通过编程更快地完成此操作?

redis cli-pipe可用于大规模插入。它从2.6-RC4开始提供,并在Redis 2.4.14中提供。 例如:

cat data.txt | redis-cli --pipe

更多信息请参见:

如果您不想创建文件,请使用echo和\n


我知道这是一个古老的线索,但添加这一点,因为它似乎错过了其他答案,一个适合我

如果您不想使用echo或显式添加或创建新文件,\n则使用在此处非常有效-


redis cli如果要执行多个命令,例如select和flushdb,则使用ControlAltDel的解决方案,因为使用-pipe选项无法工作。//,是否有方法使用-pipe选项来解决此问题?我可以使用-pipe选项执行大量命令,所以它适用于插入以外的事情。注意:我必须确保文件中的每个命令都由回车符和换行符分开,而不仅仅是换行符。这对我来说非常有用!在某些操作系统上,应使用echo-e使操作系统按预期进行解释。记住,在CentOS、echo-e DEL 9012012\nDEL 1212 | redis cliOr上使用redis cli-d始终可以更改默认的redis dilimited,如果您在bash:redis cli上,如果经过身份验证,则使用redis cli-acat data.txt | redis-cli --pipe
echo "DEL 9012012\nDEL 1212" | redis-cli