APPEND

格式:APPEND key value

作用:在key的键值后追加value,如果key不存在,则创建key,并存入value。

返回值:追加value后的字符串长度。

示例:

192.168.1.100:6379> set testkey hello

OK

192.168.1.100:6379> append testkey " word"

(integer) 10

192.168.1.100:6379> get testkey

"hello word"

BITCOUNT

格式:BITCOUNT key [start] [end]

作用:计算key的值中比特位1的个数。可以用start和end指定统计的开始和结束位置。

返回值:比特位1的个数。如果key不存在,返回0。

示例:

192.168.1.100:6379> set testkey 5

OK

192.168.1.100:6379> bitcount testkey

(integer) 4

192.168.1.100:6379> bitcount testkey 0 1

(integer) 4

192.168.1.100:6379> bitcount testkey 0 2

(integer) 4

192.168.1.100:6379> bitcount testkey 1 2

(integer) 0

BITOP

格式:BITOP operation destkey key [key ...]

作用:对一个或多个字符串key进行位操作,操作结果保存在 destkey 中。operation 有四种类型

AND 进行按位与操作;

OR 进行按位或操作;

XOR 进行按位异或操作;

NOT 进行按位取反操作。

如果其中一个key的字符串长度较短,则缺少的部分按0处理。

返回值:destkey 字符串的长度。

示例:

192.168.1.100:6379> set testkey1 E

OK

192.168.1.100:6379> set testkey2 F

OK

192.168.1.100:6379> bitop and testkey3 testkey1 testkey2

(integer) 1

192.168.1.100:6379> get testkey3

"D"

192.168.1.100:6379> bitop or testkey3 testkey1 testkey2

(integer) 1

192.168.1.100:6379> get testkey3

"G"

192.168.1.100:6379> bitop xor testkey3 testkey1 testkey2

(integer) 1

192.168.1.100:6379> get testkey3

"\x03"

192.168.1.100:6379> bitop not testkey3 testkey1

(integer) 1

192.168.1.100:6379> get testkey3

"\xba"

DECR

格式:DECR key

作用:对给定的key进行减一操作。如果key不存在,则先创建key,初始化为0,再进行减一操作。

返回值:减一后的值。如果key的值不能表示为数字,则返回错误。

示例:

192.168.1.100:6379> set testkey 9

OK

192.168.1.100:6379> decr testkey

(integer) 8

DECRBY

格式:DECRBY key decrement

作用:对给定的key进行减decrement操作。如果key不存在,则先创建key,初始化为0,再进行减decrement操作。

返回值:减decrement后的值。如果key的值不能表示为数字,则返回错误。

示例:

192.168.1.100:6379> set testkey 9

OK

192.168.1.100:6379> decrby testkey 3

(integer) 6

GET

格式:GET key

作用:获取key的字符串值。如果key不存在,返回nil。

返回值:key的字符串值。如果key的值不是字符串类型,返回错误。

GETBIT

格式:GETBIT key offset

作用:获取key指定bit位的值。

返回值:key指定bit位的值。如果offset超出了key的值的范围,或key不存在,则返回0。

示例:2的ASCII码为00110010

192.168.1.100:6379> set testkey 2

OK

192.168.1.100:6379> getbit testkey 0

(integer) 0

192.168.1.100:6379> getbit testkey 1

(integer) 0

192.168.1.100:6379> getbit testkey 2

(integer) 1

GETRANGE

格式:GETRANGE key start end

作用:获取key的值的子字符串,由start、end设置截取范围。如果偏移量为负数,表示从最后开始计数,可以用-1表示最后一个字符。如果end超出了key的值的范围,则以最后一个字符作为结束。

返回值:子字符串。

示例:

192.168.1.100:6379> set testkey "hello"

OK

192.168.1.100:6379> getrange testkey 0 1

"he"

192.168.1.100:6379> getrange testkey 2 3

"ll"

GETSET

格式:GETSET key value

作用:设置key的值为value,并返回key的旧值。

返回值:key的旧值。如果key不存在,返回nil。

INCR

格式:INCR key

作用:对给定的key进行加一操作。如果key不存在,则先创建key,初始化为0,再进行加一操作。

返回值:加一后的值。如果key的值不能表示为数字,则返回错误。

示例:

192.168.1.100:6379> set testkey 5

OK

192.168.1.100:6379> incr testkey

(integer) 6

INCRBY

格式:INCRBY key increment

作用:对给定的key进行加increment操作。如果key不存在,则先创建key,初始化为0,再进行加increment操作。

返回值:加increment后的值。如果key的值不能表示为数字,则返回错误。

示例:

192.168.1.100:6379> set testkey 5

OK

192.168.1.100:6379> incrby testkey 5

(integer) 10

INCRBYFLOAT

格式:INCRBYFLOAT key increment

作用:对给定的key进行加increment操作。如果key不存在,则先创建key,初始化为0,再进行加increment操作。计算结果最多只能表示小数点的后十七位。increment可以采用指数符号e,如2e5。

返回值:加increment后的值。如果key的值或increment不能表示为浮点数,则返回错误。

示例:

192.168.1.100:6379> set testkey 5

OK

192.168.1.100:6379> incrbyfloat testkey 5.23

"10.23"

MGET

格式:MGET key [key ...]

作用:返回一个或多个key的值。如果有的key不存在,相应的返回值为nil。

返回值:包含多个key的值的列表。

示例:

192.168.1.100:6379> mget testkey testkey2 testkey3

1) "10.23"

2) "F"

3) "\xba"

MSET

格式:MSET key value [key value ...]

作用:同时设置一个或多个key的值。

返回值:OK

示例:

192.168.1.100:6379> mset testkey 1 testkey2 2

OK

MSETNX

格式:MSETNX key value [key value ...]

作用:当所有key都不存在时同时设置一个或多个key的值。如果有某个key存在,则不会执行任何设置操作。原子性操作,要么都设置值,要么都不设置值。

返回值:如果所有key都设置成功,返回1。如果有key设置出错,返回0。

示例:

192.168.1.100:6379> msetnx testkey 1 testkey2 2

(integer) 1

192.168.1.100:6379> msetnx testkey 1 testkey2 2

(integer) 0

PSETEX

格式:PSETEX key milliseconds value

作用:设置key的值为value,过期时间为milliseconds毫秒。

返回值:成功时返回 OK

示例:psetex testkey 10000 ff

SET

格式:SET key value [EX seconds] [PX milliseconds] [NX|XX]

作用:设置key的值为value。

EX seconds 设置过期时间为seconds秒;

PX milliseconds 设置过期时间为milliseconds毫秒;

NX 只有key不存在时,才进行设置操作;

XX 只有key存在时,才进行设置操作。

返回值:成功返回OK

示例:

192.168.1.100:6379> set testkey ff EX 5 NX

OK

192.168.1.100:6379> get testkey

"ff"

192.168.1.100:6379> set testkey ff EX 5 XX

OK

192.168.1.100:6379> set testkey ff EX 5 NX

(nil)

192.168.1.100:6379> get testkey

(nil)

192.168.1.100:6379> set testkey ff EX 5 XX

(nil)

SETBIT

格式:SETBIT key offset value

作用:设置key的值的offset比特位为value。如果offset超出了key的值的范围,则中间位置补零。

返回值:offset比特位的旧值。

示例:

192.168.1.100:6379> set testkey 5

OK

192.168.1.100:6379> setbit testkey 7 0

(integer) 1

192.168.1.100:6379> get testkey

"4"

192.168.1.100:6379> setbit testkey 7 1

(integer) 0

192.168.1.100:6379> get testkey

"5"

SETEX

格式:SETEX key seconds value

作用:设置key的值为value,过期时间为 seconds 秒。

返回值:成功时返回 OK

示例:setex testkey 10 ff

SETNX

格式:SETNX key value

作用:如果key不存在,则创建key值为value。如果key存在,则不操作。

返回值:成功返回1,失败返回0。

示例:

192.168.1.100:6379> setnx testkey ff

(integer) 1

192.168.1.100:6379> setnx testkey ff

(integer) 0

192.168.1.100:6379> del testkey

(integer) 1

192.168.1.100:6379> setnx testkey ff

(integer) 1

SETRANGE

格式:SETRANGE key offset value

作用:从key的值的offset偏移开始使用value覆盖字符串。如果offset超出了key的值的范围,则中间位置补零。

返回值:修改后的字符串的长度。

示例:

192.168.1.100:6379> set testkey hellohello

OK

192.168.1.100:6379> setrange testkey 5 word

(integer) 10

192.168.1.100:6379> get testkey

"hellowordo"

STRLEN

格式:STRLEN key

作用:返回字符串的长度。

返回值:字符串的长度。如果key不存在返回0;如果key不是字符串类型,返回错误。

示例:

192.168.1.100:6379> get testkey

"hellowordo"

192.168.1.100:6379> strlen testkey

(integer) 10

原文地址:http://caiguoqing.org/post/104

Redis常用命令(2)——String的更多相关文章

  1. 3.Redis常用命令:String

    字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等.在Redis中字符串类型的Value ...

  2. Redis常用命令

    Redis常用命令Redis提供了丰富的命令对数据库和各种数据类型进行操作,这些命令可以再Linux终端使用.1.键值相关命令2.服务器相关命令 一.键值相关命令 1.get get 键值 当 key ...

  3. 第2讲 Redis常用命令与高级应用

    目录 一.redis数据类型 5. sorted sets类型和操作 二.Redis常用命令 1.键值相关命令 2.服务器相关命令 三. redis高级应用 1. 给redis服务器设置密码 2.持久 ...

  4. Redis常用命令与高级应用

    附: 127.0.0.1:6379> set xiaofei 小飞 OK 127.0.0.1:6379> get xiaofei "\xe5\xb0\x8f\xe9\xa3\x9 ...

  5. Redis快速起步及Redis常用命令大全

    本系列教程内容提要 Java工程师之Redis实战系列教程教程是一个学习教程,是关于Java工程师的Redis知识的实战系列教程,本系列教程均以解决特定问题为目标,使用Redis快速解决在实际生产中的 ...

  6. Redis 常用命令 大全

    Redis 常用命令 发现几个很好的 Redis 常用命令汇总大全网页,分享给小伙伴们~ 1.Redis 命令参考 http://redisdoc.com/string/index.html 2.W3 ...

  7. No-sql之redis常用命令

    转自:http://blog.csdn.net/nicewuranran/article/details/51793760 No-SQL之Redis 介绍 Redis是一种基于内存存储的key-val ...

  8. Redis常用命令手册:服务器相关命令

    Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如各类语言包,这些命令都有对应的方法.下面将Redis提供的命令做一 ...

  9. redis redis常用命令及内存分析总结(附RedisClient工具简介

    redis常用命令及内存分析总结(附RedisClient工具简介 by:授客 QQ:1033553122 redis-cli工具 查看帮助 连接redis数据库 常用命令 exists key se ...

随机推荐

  1. @DependsOn注解的使用

    如果Bean A 在创建前需要先创建BeanB此时就可以使用DependsOn注解 @Configuration public class MyConfig { @Bean @DependsOn(&q ...

  2. mongodb安装教程(亲测有效)

    网上太多教程了,都是说的不明不白,所以自己整理一份 #参考官网: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat ...

  3. notepad快捷使用

    1.快捷键 参考:https://www.php.cn/tool/notepad/428638.html notepad++是经常使用的一款编辑器软件,在编辑特殊文本的时候(html,java...) ...

  4. 0xctf[No parameters readfile](魔改版[GXYCTF2019]禁止套娃)

    阅读本文前建议先阅读本站中的另一篇文章:[GXYCTF2019]禁止套娃 重要参考链接:http://www.heetian.com/info/827 Leon师傅魔改了[GXYCTF2019]禁止套 ...

  5. intelliJ 软件项目打开运行

    1.导入项目 2.首先更改数据库,找到application-dev.yml文件,更改数据源 3.配置tomcat端口  找到application.yml 文件 然后打开pom.xml 更改版本号 ...

  6. 本地环境Django配置问题

    Django本地环境出现的问题 当你的前端出现这个问题的时候 你只需要吧setting.py 中的DEBUG 改为 True,即可 我原来是是DEBUG = False 本人亲测有用!!!

  7. C语言编程丨循环链表实现约瑟夫环!真可谓无所不能的C!

    循环链表   把链表的两头连接,使其成为了一个环状链表,通常称为循环链表. 和它名字的表意一样,只需要将表中最后一个结点的指针指向头结点,链表就能成环儿,下图所示.   需要注意的是,虽然循环链表成环 ...

  8. 【应用服务 App Service】Azure App Service 中如何安装mcrypt - PHP

    问题描述 Azure App Service (应用服务)如何安装PHP的扩展 mcrypt(mcrypt 是php里面重要的加密支持扩展库) 准备条件 创建App Service, Runtime ...

  9. Apache Hudi助力nClouds加速数据交付

    1. 概述 在nClouds上,当客户的业务决策取决于对近实时数据的访问时,客户通常会向我们寻求有关数据和分析平台的解决方案.但随着每天创建和收集的数据量都在增加,这使得使用传统技术进行数据分析成为一 ...

  10. C++ 多线程 std::thread 使用总结

    在C++ 11之前,官方并没有支持线程库.C++ 11通过标准库引入了对 thread 类的支持,大大方便了完成多线程开发的工作. std::thread 构造函数  (1)thread() noex ...