list操作
进入docker容器,连接redis client服务
[root@iZbp1anm6ub4cms5pa42hkZ ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS ES
7aebc46c3177 tomcat "catalina.sh run" 7 days ago Up 7 days 0.0.0.0:80->8080/tcp, :::80->8080/tcp cat03
d1cdf93d7655 mysql:latest "docker-entrypoint.s…" 7 days ago Up 7 days 33060/tcp, 0.0.0.0:3305->3306/tcp, :::3305->ql02
2bc379badae1 redis:latest "docker-entrypoint.s…" 11 days ago Up 11 days 0.0.0.0:6379->6379/tcp, :::6379->6379/tcp is01
059163bf0cd4 tomcat "catalina.sh run" 6 weeks ago Up 6 weeks 0.0.0.0:3355->8080/tcp, :::3355->8080/tcp cat01
[root@iZbp1anm6ub4cms5pa42hkZ ~]# docker exec -it 2bc379 /bin/bash
root@2bc379badae1:/data# redis-cli -h 172.17.0.3 -p 6379
172.17.0.3:6379>
操作(输入以下,会出现提示):
lpush
rpush
lpop
rpop
lrange
lindex
lrem
ltrim
llen
rpoplpush
lset
linsert
172.17.0.3:6379> LPUSH list one
(integer) 1
172.17.0.3:6379> LPUSH list two
(integer) 2
172.17.0.3:6379> LPUSH list three
(integer) 3
172.17.0.3:6379> LRANGE list 0 -1
1) "three"
2) "two"
3) "one"
172.17.0.3:6379> LRANGE list 0 2
1) "three"
2) "two"
3) "one"
172.17.0.3:6379> LRANGE list 0 1
1) "three"
2) "two"
172.17.0.3:6379> LRANGE list 0 0
1) "three"
172.17.0.3:6379> LRANGE list 0 0
- LPUSH key element #在左边新添加元素,可添加多个,元素之间以空格隔开
- RPUSH key element #在右边新添加元素
- LRANGE key start end #获取元素值
- LPOP key count #移除列表元素,从列表头开始
- RPOP key count #移除列表元素,从列表尾开始
- LINDEX key index #获取指定下标的值
172.17.0.3:6379> LPOP list 2
1) "three"
2) "two"
172.17.0.3:6379> LRANGE list 0 -1
1) "one"
2) "four"
172.17.0.3:6379> LINDEX list 1
"four"
172.17.0.3:6379> LINDEX list 0
"one"
172.17.0.3:6379> LPUSH list nine,eight
(integer) 3
172.17.0.3:6379> LINDEX list
(error) ERR wrong number of arguments for 'lindex' command
172.17.0.3:6379> LRANGE list
(error) ERR wrong number of arguments for 'lrange' command
172.17.0.3:6379> LRANGE list 0 -1
1) "nine,eight"
2) "one"
3) "four"
172.17.0.3:6379> Lpop list 1
1) "nine,eight"
172.17.0.3:6379> LRANGE list 0 -1
1) "one"
2) "four"
172.17.0.3:6379> LPUSH list nine eight
(integer) 4
172.17.0.3:6379>
- llen list #获取列表长度
- lrem list count element #移除指定数量的元素
- ltrim list start end #通过下表截取指定长度,截断
172.17.0.3:6379> LRANGE list 0 -1
1) "eight"
2) "nine"
3) "one"
4) "four"
172.17.0.3:6379> lrem list eight
(error) ERR wrong number of arguments for 'lrem' command
172.17.0.3:6379> lrem list 1
(error) ERR wrong number of arguments for 'lrem' command
172.17.0.3:6379> lrem list 1 nine
(integer) 1
172.17.0.3:6379> ltrim list 1 2
OK
172.17.0.3:6379> LRANGE list 0 -1
1) "one"
2) "four"
172.17.0.3:6379>
- rpoplpush 移除最后一个元素 将其添加到另一个列表
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210701170508640.png
172.17.0.3:6379> rpush list2 "hello" "hello1" "hello3" "hello4"
(integer) 4
172.17.0.3:6379> lrange list2
(error) ERR wrong number of arguments for 'lrange' command
172.17.0.3:6379> lrange list2 0 -1
1) "hello"
2) "hello1"
3) "hello3"
4) "hello4"
172.17.0.3:6379> rpoplpush list2 list3
"hello4"
172.17.0.3:6379> lrange list2 0 -1
1) "hello"
2) "hello1"
3) "hello3"
172.17.0.3:6379> lrange list3 0 -1
1) "hello4"
- lset ket index value #将列表中指定下标的值替换为另一个值
注意:不存在列表会报错,下标错误会报错
172.17.0.3:6379> exists list
(integer) 0
172.17.0.3:6379> lset list 0 ie
(error) ERR no such key
172.17.0.3:6379> lpush list value1
(integer) 1
172.17.0.3:6379> lset list 1 ie
(error) ERR index out of range
172.17.0.3:6379> lset list 0 ie
- linsert 插入值
172.17.0.3:6379> lrange list 0 -1
1) "ie"
172.17.0.3:6379> lindex list 0
"ie"
172.17.0.3:6379> LINSERT list before ie firefox
(integer) 2
172.17.0.3:6379> lrange list 0 -1
1) "firefox"
2) "ie"
172.17.0.3:6379> LINSERT list after ie chrom
(integer) 3
172.17.0.3:6379> lrange list 0 -1
1) "firefox"
2) "ie"
3) "chrom"
172.17.0.3:6379>