List全部命令如下:
lset key index value # 将列表key下标为index的元素的值设置为value,当 index 参数超出范围,或对一个空列表(key不存在)进行lset时,返回一个错误
lpush key value1 value2 ... # 将一个或多个值value插入到列表key的表头,值按顺序插入,但每个值都插在表头位置,即列表的值为(...,value2,value1)
rpush key value1 value2 ... # 将一个或多个值value插入到列表key的表尾,值按顺序插入,但每个值都插在表尾位置,即列表的值为(value1,value2,...)
lpop key # 移除并返回列表key的头元素
rpop key # 移除并返回列表key的尾元素
llen key # 获取列表key的长度
lindex key index # 返回列表key中下标为index的元素
linsert key before|after pivot value # 将value插入到值pivot的前面|后面的位置
lpushx key value # 将值value插入到列表key的表头,当且仅当key存在并且是一个列表
rpush key value # 将值value插入到列表key的表尾,当且仅当key粗在并且是一个列表
lrange key start stop # 返回列表key中以偏移量start和stop指定区间内的元素
lrem key count value # 根据参数count的值,移除列表中与参数value相等的元素
# count > 0 : 从表头开始向表尾搜索,移除与value相等的元素,数量为count。
# count < 0 : 从表尾开始向表头搜索,移除与value相等的元素,数量为count的绝对值。
# count = 0 : 移除表中所有与value相等的值
ltrim key start stop # 移除不在start和stop中间的所有元素
rpoplpush source destination # 将列表source的尾元素弹出,并返回给客户端,再把弹出的元素插入到列表destination作为头元素
blpop key1 (key2 ...) timeout # lpop的阻塞式弹出版本,如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止
brpop key1 (key2 ...) timeout # rpop的阻塞式弹出版本,如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止
brpoplpush source destination timeout # rpoplpush的阻塞式版本,如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止