我刚刚接触,找了个例子,发现不运行,不知道什么原因,麻烦大家了;
编写test.lua:
return redis.call('get', KEYS[1])
redis-cli执行脚本: eval ***/test.lua 1 name
怎么也不运行。。。
redis-cli执行脚本:eval "return redis.call('get', KEYS[1])" 1 name却能得出键对应的值
我哪里错了? 是缺少工具吗? 麻烦了。
http://www.linuxidc.com/Linux/2015-03/115607.htm
http://www.oschina.net/translate/intro-to-lua-for-redis-programmers?print
哪位前辈帮我一下,在这里指点我哪里错了? 是不是缺少工具,还是什么原因?
用redis 解决什么问题?
你的用法不对,使用已编辑好的 .lua 脚本文件的方式有两种:
1. redis-cli --eval path/to/.lua num key
如使用你的脚本为: redis-cli --eval test.lua 1 name
注意:前边有两个减号
2. redis-cli eval "$(cat path/to/*.lua )" num key
这种方式跟你执行成功的那个差不多,只是先将 *.lua 文件中的代码 取出来,作为参数传递
如使用你的脚本为: redis-cli eval "$(cat test.lua )" 1 name
注意:这种方法一定要使用双引号,不能使用单引号