Redis 命令 - Lists
BLPOP key [key ...] timeout
Remove and get the first element in a list, or block until one is available
More: http://redis.io/commands/blpop, http://www.redis.cn/commands/blpop.html
BRPOP key [key ...] timeout
Remove and get the last element in a list, or block until one is available
More: http://redis.io/commands/brpop, http://www.redis.cn/commands/brpop.html
BRPOPLPUSH source destination timeout
Pop a value from a list, push it to another list and return it; or block until one is available
More: http://redis.io/commands/brpoplpush, http://www.redis.cn/commands/brpoplpush.html
LINDEX key index
Get an element from a list by its index
127.0.0.1:6379> LPUSH foo 1 3 5 7 9 (integer) 5 127.0.0.1:6379> LINDEX foo 1 "7" 127.0.0.1:6379> LINDEX foo -2 "3"
More: http://redis.io/commands/lindex, http://www.redis.cn/commands/lindex.html
LINSERT key BEFORE|AFTER pivot value
Insert an element before or after another element in a list
127.0.0.1:6379> LPUSH foo 10 20 40 80 (integer) 4 127.0.0.1:6379> LINSERT foo BEFORE 20 80 (integer) 5 127.0.0.1:6379> LRANGE foo 0 -1 1) "80" 2) "40" 3) "80" 4) "20" 5) "10" 127.0.0.1:6379> LINSERT foo AFTER 80 0 (integer) 6 127.0.0.1:6379> LRANGE foo 0 -1 1) "80" 2) "0" 3) "40" 4) "80" 5) "20" 6) "10"
More: http://redis.io/commands/linsert, http://www.redis.cn/commands/linsert.html
LLEN key
Get the length of a list
127.0.0.1:6379> LPUSH foo 1 2 4 (integer) 3 127.0.0.1:6379> LLEN foo (integer) 3
More: http://redis.io/commands/llen, http://www.redis.cn/commands/llen.html
LPOP key
Remove and get the first element in a list
127.0.0.1:6379> LPUSH foo 1 2 4 8 (integer) 4 127.0.0.1:6379> LPOP foo "8" 127.0.0.1:6379> LPOP foo "4"
More: http://redis.io/commands/lpop, http://www.redis.cn/commands/lpop.html
LPUSH key value [value ...]
Prepend one or multiple values to a list
127.0.0.1:6379> LPUSH foo 1 (integer) 1 127.0.0.1:6379> LPUSH foo 2 4 (integer) 3 127.0.0.1:6379> LRANGE foo -1 0 (empty list or set) 127.0.0.1:6379> 127.0.0.1:6379> LRANGE foo 0 -1 1) "4" 2) "2" 3) "1"
More: http://redis.io/commands/lpush, http://www.redis.cn/commands/lpush.html
LPUSHX key value
Prepend a value to a list, only if the list exists
127.0.0.1:6379> LPUSHX foo 1 (integer) 0 127.0.0.1:6379> LRANGE foo 0 -1 (empty list or set) 127.0.0.1:6379> LPUSH foo 1 (integer) 1 127.0.0.1:6379> LPUSHX foo 2 (integer) 2 127.0.0.1:6379> LRANGE foo 0 -1 1) "2" 2) "1"
More: http://redis.io/commands/lpushx, http://www.redis.cn/commands/lpushx.html
LRANGE key start stop
Get a range of elements from a list
127.0.0.1:6379> LPUSH foo 1 3 5 7 9 (integer) 5 127.0.0.1:6379> LRANGE foo 1 3 1) "7" 2) "5" 3) "3" 127.0.0.1:6379> LRANGE foo 0 -1 1) "9" 2) "7" 3) "5" 4) "3" 5) "1"
More: http://redis.io/commands/lrange, http://www.redis.cn/commands/lrange.html
LREM key count value
Remove elements from a list
127.0.0.1:6379> RPUSH foo 1 2 1 3 1 4 (integer) 6 127.0.0.1:6379> LREM foo 2 1 (integer) 2 127.0.0.1:6379> LRANGE foo 0 -1 1) "2" 2) "3" 3) "1" 4) "4" 127.0.0.1:6379> RPUSH foo 3 1 3 2 1 3 (integer) 10 127.0.0.1:6379> LREM foo -3 3 (integer) 3 127.0.0.1:6379> LRANGE foo 0 -1 1) "2" 2) "3" 3) "1" 4) "4" 5) "1" 6) "2" 7) "1" 127.0.0.1:6379> LREM foo 0 1 (integer) 3 127.0.0.1:6379> LRANGE foo 0 -1 1) "2" 2) "3" 3) "4" 4) "2"
More: http://redis.io/commands/lrem, http://www.redis.cn/commands/lrem.html
LSET key index value
Set the value of an element in a list by its index
127.0.0.1:6379> RPUSH foo 1 2 3 4 5 (integer) 5 127.0.0.1:6379> LSET foo 3 0 OK 127.0.0.1:6379> LRANGE foo 0 -1 1) "1" 2) "2" 3) "3" 4) "0" 5) "5"
More: http://redis.io/commands/lset, http://www.redis.cn/commands/lset.html
LTRIM key start stop
Trim a list to the specified range
127.0.0.1:6379> RPUSH foo 1 3 5 7 9 (integer) 5 127.0.0.1:6379> LTRIM foo 3 -1 OK 127.0.0.1:6379> LRANGE foo 0 -1 1) "7" 2) "9"
More: http://redis.io/commands/ltrim, http://www.redis.cn/commands/ltrim.html
RPOP key
Remove and get the last element in a list
127.0.0.1:6379> RPUSH foo 1 2 3 4 (integer) 4 127.0.0.1:6379> RPOP foo "4" 127.0.0.1:6379> RPOP foo "3" 127.0.0.1:6379> LRANGE foo 0 -1 1) "1" 2) "2"
More: http://redis.io/commands/rpop, http://www.redis.cn/commands/rpop.html
RPOPLPUSH source destination
Remove the last element in a list, prepend it to another list and return it
127.0.0.1:6379> RPUSH foo 1 3 5 (integer) 3 127.0.0.1:6379> RPUSH bar 2 4 (integer) 2 127.0.0.1:6379> RPOPLPUSH foo bar "5" 127.0.0.1:6379> LRANGE foo 0 -1 1) "1" 2) "3" 127.0.0.1:6379> LRANGE bar 0 -1 1) "5" 2) "2" 3) "4" 127.0.0.1:6379> RPOPLPUSH bar bar "4" 127.0.0.1:6379> LRANGE bar 0 -1 1) "4" 2) "5" 3) "2"
More: http://redis.io/commands/rpoplpush, http://www.redis.cn/commands/rpoplpush.html
RPUSH key value [value ...]
Append one or multiple values to a list
127.0.0.1:6379> RPUSH foo 1 (integer) 1 127.0.0.1:6379> RPUSH foo 1 2 3 (integer) 4 127.0.0.1:6379> LRANGE foo 0 -1 1) "1" 2) "1" 3) "2" 4) "3"
More: http://redis.io/commands/rpush, http://www.redis.cn/commands/rpush.html
RPUSHX key value
Append a value to a list, only if the list exists
127.0.0.1:6379> RPUSHX foo 1 (integer) 0 127.0.0.1:6379> LRANGE foo 0 -1 (empty list or set) 127.0.0.1:6379> RPUSH foo 1 (integer) 1 127.0.0.1:6379> RPUSHX foo 2 (integer) 2 127.0.0.1:6379> LRANGE foo 0 -1 1) "1" 2) "2"
More: http://redis.io/commands/rpushx, http://www.redis.cn/commands/rpushx.html