Redis - Scripting Eval 命令



Redis EVAL 命令用於使用 Lua 直譯器評估指令碼。EVAL 的第一個引數是 Lua 5.1 指令碼。該指令碼不需要(也不應該)定義 Lua 函式。它只是將在 Redis 伺服器上下文中執行的 Lua 程式。EVAL 的第二個引數是由 Lua 使用 KEYS 全域性變數以一位為基數的陣列的形式(因此 KEYS[1]、KEYS[2],...)訪問表示 Redis 鍵名的後面跟在指令碼之後的引數的數量(從第三個引數開始)。所有其他引數不應表示鍵名,可以使用 ARGV 全域性變數訪問,類似於金鑰的處理方式(因此 ARGV[1]、ARGV[2],...)。

語法

以下是 Redis EVAL 命令的基本語法。

redis 127.0.0.1:6379> EVAL script numkeys key [key ...] arg [arg ...]

示例

redis 127.0.0.1:6379> eval "return {KEYS[1],KEYS[2],ARGV[1],ARGV[2]}" 2 key1 
key2 first second 
1) "key1" 
2) "key2" 
3) "first" 
4) "second"
redis_scripting.htm
廣告