Redis 笔记(三)—— LIST 常用命令
常用命令
命令 | 用例和描述 |
---|---|
RPUSH | RPUSH key value [value ...] —— 将一个或多个值推入列表的右端 |
LPUSH | LPUSH key value [value ...] —— 将一个或多个值推入列表的左端 |
RPOP | RPOP key —— 移除并返回列表最右端的元素 |
LPOP | LPOP key —— 移除并返回列表最左端的元素 |
LINDEX | LINDEX key offset —— 返回列表中偏移量为 offset 的元素 |
LRANGE | LRANGE key start end —— 返回列表从 start 到 end 偏移量范围内的元素(包含 start, end) |
LTRIM | LTRIM key start end —— 对列表进行修剪,只保留从 start 到 end 的元素(包含 start, end) |
例子 :
127.0.0.1:> rpush list-key last
(integer)
127.0.0.1:> lpush list-key first
(integer)
127.0.0.1:> rpush list-key "new last"
(integer)
127.0.0.1:> lrange list-key -
) "first"
) "last"
) "new last"
127.0.0.1:> lpop list-key
"first"
127.0.0.1:> lpop list-key
"last"
127.0.0.1:> lrange list-key -
) "new last"
127.0.0.1:> rpush list-key a b c
(integer)
127.0.0.1:> lrange list-key -
) "new last"
) "a"
) "b"
) "c"
127.0.0.1:> ltrim list-key -
OK
127.0.0.1:> lrange list-key -
) "b"
) "c"
阻塞式的列表弹出命令以及在列表之间移动元素的命令
命令 | 用例和描述 |
---|---|
BLPOP | BLPOP key [key ...] timeout —— 从第一个非空列表中弹出最左端的元素,或者在 timeout 秒之内阻塞并等待可弹出的元素出现 |
BRPOP | BRPOP key [key ...] timeout —— 基本同 BLPOP,只是是从最右端弹出 |
RPOPLPUSH | RPOPLPUSH source-key dest-key —— 从 source-key 列表中弹出最右端元素插入 dest-key 最左端,并返回此元素 |
BRPOPLPUSH | BRPOPLPUSH source-key dest-key timeout —— 从 source-key 列表弹出最右端的元素,插入到 dest-key 的最左端,并返回此元素,如果 source-key 为空,那么在 timeout 秒之内阻塞并等待可弹出的元素出现 |
例子:
127.0.0.1:> rpush list item1
(integer)
127.0.0.1:> rpush list item2
(integer)
127.0.0.1:> rpush list2 item3
(integer)
127.0.0.1:> brpoplpush list2 list
"item3"
127.0.0.1:> brpoplpush list2 list
(nil)
(.01s)
127.0.0.1:> lrange list -
) "item3"
) "item1"
) "item2"
127.0.0.1:> lrange list2 -
(empty list or set)
127.0.0.1:> brpoplpush list list2
"item2"
# BLPOP 会从左到右检查列表,并对最先遇到的非空列表执行弹出操作
127.0.0.1:> blpop list list2
) "list" # 弹出元素所属的列表
) "item3" # 弹出的元素
127.0.0.1:> blpop list list2
) "list"
) "item1"
127.0.0.1:> blpop list list2
) "list2"
) "item2"
127.0.0.1:> blpop list list2
(nil) # 结果
(.04s) # 等待时间
Redis 笔记(三)—— LIST 常用命令的更多相关文章
- laravel5.8笔记三:常用命令
创建控制器 php artisan make:controller Index/IndexController 创建模型 php artisan make:model Index/IndexContr ...
- redis学习-集合set常用命令
redis学习-集合set常用命令 1.sadd:添加一个元素到集合中(集合中的元素无序的并且唯一) 2.smembers:查看集合中所有的元素(上图事例) 3.srem:删除结合中指定的元素 4 ...
- redis学习-散列表常用命令(hash)
redis学习-散列表常用命令(hash) hset,hmset:给指定散列表插入一个或者多个键值对 hget,hmget:获取指定散列表一个或者多个键值对的值 hgetall:获取所欲哦键值以及 ...
- docker学习笔记二:常用命令
docker学习笔记二:常用命令 查看docker常用命令 docker --help 返回结果如下: 其中常用的命令如下: 1.image相关操作 展示所有的image: 删除image: rmi ...
- go的三个常用命令go run go build go install
go的三个常用命令 go run go build go install 命令源码文件:含有 main函数 的文件 库源码文件:不包含 main函数 的文件, 主要用于编译成静态文件.a供其他包调用 ...
- 解析Redis操作五大数据类型常用命令
摘要:分享经常用到一些命令和使用场景总结,以及对Redis中五大数据类型如何使用cmd命令行的形式进行操作的方法. 本文分享自华为云社区<Redis操作五大数据类型常用命令解析>,作者:灰 ...
- Redis学习笔记(三)常用命令整理
Redis 常用命令 1.DEL key 删除key2.EXISTS key 检查key是否存在3.KEYS * 查看所有的key4.EXPIRE key seconds 设置key的过期时间5.TT ...
- Redis学习之路(三)常用命令总结
一.集群 查看Redis集群有多少个库 192.168.200.100:7001> config get databases 1) "databases" 2) " ...
- Redis的数据类型及其常用命令
快速入门Redis 首先安装redis: windows下安装redis Linux下安装redis 1. 什么是redis Redis属于nosql(非关系型数据库) 关系型数据库是基于关系表的数据 ...
- redis的安装和常用命令
一.redis的安装 1.windows安装redis 下载地址:https://github.com/MSOpenTech/redis/releases. Redis 支持 32 位和 64 位.这 ...
随机推荐
- 什么是容器,什么是Docker?
此文转载自http://www.cnblogs.com/CloudMan6/p/6751516.html行文时有所改动 什么是容器?什么是Docker? 容器是一种轻量级.可移植.自包含的软件打包技术 ...
- xpath提取标签和内容
转:https://segmentfault.com/q/1010000012110138/a-1020000012113020 <div> <table> <tr> ...
- kafka集群搭建及结合springboot使用
1.场景描述 因kafka以前用的不多,只往topic中写入和读取过数据,这次刚好又要用到,记录下kafka集群搭建及结合springboot使用. 2. 解决方案 2.1 简单介绍 (一)关于kaf ...
- BrowserSync(前端利器—保存代码后,自动刷新浏览器)
摘要 Browsersync能让浏览器实时.快速响应您的文件更改(HTML.JavaScript.CSS.Sass.Less.PHP.Python等)并自动刷新页面.更重要的是 Browsersync ...
- mysql的那些事之架构
MySQL架构的那些事 此篇博客为原创,欢迎转载,转载时请注明出处,谢谢 最近深入学习了一下mysql的内容,想把自己的理解分享出来. mysql架构 逻辑架构 Connectors:连接器 Mana ...
- java-乘法口诀表。(新手)
//创建的一个包名. package qige; //定义一个类. public class KJ { //公共静态的一个主方法. public static void main(String[] a ...
- 编译Zookeeper3.4.6源代码并通过Intellij IDEA运行(2020年)
一.问题背景 生产环境Windows机器上用的Zookeeper 3.4.6,最近经常报如下异常: 经过搜索,看到一篇帖子可以解决:https://www.jianshu.com/p/73eec030 ...
- ChaosTool,iOS添加垃圾代码工具,代码混淆工具,代码生成器,史上最好用的垃圾代码添加工具,自己开发的小工具
最近在H5游戏项目中需要添加垃圾代码作混淆,提高过审机率.手动添加太费时费力,在网上并没有找到合适的比较好的工具,就自己动手写了一个垃圾代码添加工具,命名为ChaosTool. 扣扣交流群:81171 ...
- Kubernetes中Pod健康检查
目录 1.何为健康检查 2.探针分类 2.1.LivenessProbe探针(存活性探测) 2.2.ReadinessProbe探针(就绪型探测) 3.探针实现方法 3.1.Container Exe ...
- vscode 配置c++记录
c_cpp_properties.json { "configurations": [ { "name": "MinGW", "i ...