Skip to content

Instantly share code, notes, and snippets.

@kongqx
Forked from LeCoupa/redis_cheatsheet.bash
Created June 20, 2019 04:07
Show Gist options
  • Save kongqx/851040e1c17a9024997b7d6b1dacb6dd to your computer and use it in GitHub Desktop.
Save kongqx/851040e1c17a9024997b7d6b1dacb6dd to your computer and use it in GitHub Desktop.

Revisions

  1. @LeCoupa LeCoupa revised this gist Nov 12, 2017. No changes.
  2. @LeCoupa LeCoupa revised this gist Nov 10, 2017. No changes.
  3. Julien Le Coupanec revised this gist Oct 31, 2016. 1 changed file with 1 addition and 0 deletions.
    1 change: 1 addition & 0 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -129,4 +129,5 @@ UNSUBSCRIBE [channel [channel ...]] # stop listening for messages poste

    # Other Commands


    KEYS pattern # find all keys matching the given pattern
  4. Julien Le Coupanec revised this gist Oct 31, 2016. 1 changed file with 4 additions and 0 deletions.
    4 changes: 4 additions & 0 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -126,3 +126,7 @@ PUNSUBSCRIBE [pattern [pattern ...]]  # stop listening for messages post
    SUBSCRIBE channel [channel ...]  # listen for messages published to the given channels
    UNSUBSCRIBE [channel [channel ...]] # stop listening for messages posted to the given channels


    # Other Commands

    KEYS pattern # find all keys matching the given pattern
  5. Julien Le Coupanec revised this gist Oct 31, 2016. 1 changed file with 13 additions and 1 deletion.
    14 changes: 13 additions & 1 deletion redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -113,4 +113,16 @@ HVALS key # get all the values in a hash
    PFADD key element [element ...] # add the specified elements to the specified HyperLogLog
    PFCOUNT key [key ...] # return the approximated cardinality of the set(s) observed by the HyperLogLog at key's)

    PFMERGE destkey sourcekey [sourcekey ...] # merge N HyperLogLogs into a single one
    PFMERGE destkey sourcekey [sourcekey ...] # merge N HyperLogLogs into a single one


    # Publication & Subscription


    PSUBSCRIBE pattern [pattern ...] # listen for messages published to channels matching the given patterns
    PUBSUB subcommand [argument [argument ...]]  # inspect the state of the Pub/Sub subsystem
    PUBLISH channel message # post a message to a channel
    PUNSUBSCRIBE [pattern [pattern ...]]  # stop listening for messages posted to channels matching the given patterns
    SUBSCRIBE channel [channel ...]  # listen for messages published to the given channels
    UNSUBSCRIBE [channel [channel ...]] # stop listening for messages posted to the given channels

  6. Julien Le Coupanec revised this gist Oct 31, 2016. 1 changed file with 10 additions and 0 deletions.
    10 changes: 10 additions & 0 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -104,3 +104,13 @@ HKEYS key # get all the fields in a hash
    HLEN key # get all the fields in a hash
    HSTRLEN key field # get the length of the value of a hash field
    HVALS key # get all the values in a hash


    # HyperLogLog
    # HyperLogLog uses randomization in order to provide an approximation of the number of unique elements in a set using just a constant, and small, amount of memory


    PFADD key element [element ...] # add the specified elements to the specified HyperLogLog
    PFCOUNT key [key ...] # return the approximated cardinality of the set(s) observed by the HyperLogLog at key's)

    PFMERGE destkey sourcekey [sourcekey ...] # merge N HyperLogLogs into a single one
  7. Julien Le Coupanec revised this gist Oct 31, 2016. 1 changed file with 14 additions and 11 deletions.
    25 changes: 14 additions & 11 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -90,14 +90,17 @@ ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count] # return a range of
    # Hashes are maps between string fields and string values, so they are the perfect data type to represent objects.


    HSET user:1000 name "John Smith" # sets name to user #1000
    HSET user:1000 email "[email protected]" # sets email to user #1000
    HGET user:1001 name # returns the name for the user #1000
    HGETALL user:1000 # gets bak the saved data for the hash

    HMSET user:1001 name "John Smith" email "[email protected]" # sets multiple fields at once

    HINCRBY user:1000 visits 1 # increments value in hash by X
    HDEL user:1000 visits # deletes value in hash


    HGET key field # get the value of a hash field
    HGETALL key # get all the fields and values in a hash
    HSET key field value # set the string value of a hash field
    HSETNX key field value # set the string value of a hash field, only if the field does not exists

    HMSET key field value [field value ...] # set multiple fields at once

    HINCRBY key field increment # increment value in hash by X
    HDEL key field [field ...] # delete one or more hash fields
    HEXISTS key field # determine if a hash field exists
    HKEYS key # get all the fields in a hash
    HLEN key # get all the fields in a hash
    HSTRLEN key field # get the length of the value of a hash field
    HVALS key # get all the values in a hash
  8. Julien Le Coupanec revised this gist Oct 31, 2016. 1 changed file with 12 additions and 2 deletions.
    14 changes: 12 additions & 2 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -71,11 +71,21 @@ SPOP key [count] # remove and return one or multiple random memb
    # This score is used to sort the elements in the set.


    ZADD mysset score value # adds the given value with the score to the set
    ZRANGE mysset 0 2 # returns a subset of the sorted set
    ZADD key [NX|XX] [CH] [INCR] score member [score member ...] # add one or more members to a sorted set, or update its score if it already exists

    ZCARD key # get the number of members in a sorted set
    ZCOUNT key min max # count the members in a sorted set with scores within the given values
    ZINCRBY key increment member # increment the score of a member in a sorted set
    ZRANGE key start stop [WITHSCORES] # returns a subset of the sorted set
    ZRANK key member # determine the index of a member in a sorted set
    ZREM key member [member ...]  # remove one or more members from a sorted set
    ZREMRANGEBYRANK key start stop # remove all members in a sorted set within the given indexes
    ZREMRANGEBYSCORE key min max # remove all members in a sorted set, by index, with scores ordered from high to low
    ZSCORE key member # get the score associated with the given mmeber in a sorted set

    ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count] # return a range of members in a sorted set, by score


    # Hashes
    # Hashes are maps between string fields and string values, so they are the perfect data type to represent objects.

  9. Julien Le Coupanec revised this gist Oct 31, 2016. 1 changed file with 10 additions and 6 deletions.
    16 changes: 10 additions & 6 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -36,7 +36,7 @@ TTL key # returns the number of seconds until a key is


    RPUSH key value [value ...] # put the new value at the end of the list
    RPUSHX key value # Append a value to a list, only if the exists
    RPUSHX key value # append a value to a list, only if the exists
    LPUSH key value [value ...] # put the new value at the start of the list
    LRANGE key start stop # give a subset of the list
    LINDEX key index # get an element from a list by its index
    @@ -55,11 +55,15 @@ BRPOP key [key ...] timeout # remove and get the last element in a li
    # A set is similar to a list, except it does not have a specific order and each element may only appear once.


    SADD myset value # adds the given value to the set
    SREM myset value # removes the given value from the set
    SISMEMBER myset value # tests if the given value is in the set.
    SMEMBERS myset # returns a list of all the members of this set
    SUNION myset otherset # combines two or more sets and returns the list of all elements
    SADD key member [member ...] # add the given value to the set
    SCARD key # get the number of members in a set
    SREM key member [member ...] # remove the given value from the set
    SISMEMBER myset value # test if the given value is in the set.
    SMEMBERS myset # return a list of all the members of this set
    SUNION key [key ...] # combine two or more sets and returns the list of all elements
    SINTER key [key ...] # intersect multiple sets
    SMOVE source destination member # move a member from one set to another
    SPOP key [count] # remove and return one or multiple random members from a set


    # Sorted Sets
  10. Julien Le Coupanec revised this gist Oct 31, 2016. 1 changed file with 10 additions and 7 deletions.
    17 changes: 10 additions & 7 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -35,19 +35,22 @@ TTL key # returns the number of seconds until a key is
    # A list is a series of ordered values.


    RPUSH list value # put the new value at the end of the list
    LPUSH list value # put the new value at the start of the list
    LRANGE list 0 1 # give a subset of the list
    RPUSH key value [value ...] # put the new value at the end of the list
    RPUSHX key value # Append a value to a list, only if the exists
    LPUSH key value [value ...] # put the new value at the start of the list
    LRANGE key start stop # give a subset of the list
    LINDEX key index # get an element from a list by its index
    LINSERT key BEFORE|AFTER pivot value # insert an element before or after another element in a list
    LLEN list # return the current length of the list
    LPOP list # remove the first element from the list and returns it
    RPOP list # remove the last element from the list and returns it
    LLEN key # return the current length of the list
    LPOP key # remove the first element from the list and returns it
    LSET key index value # set the value of an element in a list by its index
    LTRIM key start stop # trim a list to the specified range
    RPOP key # remove the last element from the list and returns it
    RPOPLPUSH source destination # remove the last element in a list, prepend it to another list and return it
    BLPOP key [key ...] timeout # remove and get the first element in a list, or block until one is available
    BRPOP key [key ...] timeout # remove and get the last element in a list, or block until one is available



    # Sets.
    # A set is similar to a list, except it does not have a specific order and each element may only appear once.

  11. Julien Le Coupanec revised this gist Oct 31, 2016. 1 changed file with 11 additions and 6 deletions.
    17 changes: 11 additions & 6 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -35,12 +35,17 @@ TTL key # returns the number of seconds until a key is
    # A list is a series of ordered values.


    RPUSH list value # puts the new value at the end of the list
    LPUSH list value # puts the new value at the start of the list
    LRANGE list 0 1 # gives a subset of the list
    LLEN list # returns the current length of the list
    LPOP list # removes the first element from the list and returns it
    RPOP list # removes the last element from the list and returns it
    RPUSH list value # put the new value at the end of the list
    LPUSH list value # put the new value at the start of the list
    LRANGE list 0 1 # give a subset of the list
    LINDEX key index # get an element from a list by its index
    LINSERT key BEFORE|AFTER pivot value # insert an element before or after another element in a list
    LLEN list # return the current length of the list
    LPOP list # remove the first element from the list and returns it
    RPOP list # remove the last element from the list and returns it
    BLPOP key [key ...] timeout # remove and get the first element in a list, or block until one is available
    BRPOP key [key ...] timeout # remove and get the last element in a list, or block until one is available



    # Sets.
  12. Julien Le Coupanec revised this gist Oct 29, 2016. 1 changed file with 2 additions and 0 deletions.
    2 changes: 2 additions & 0 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -13,6 +13,8 @@ APPEND key value # append a value to a key
    BITCOUNT key [start end] # count set bits in a string
    SET key value # set value in key
    SETNX key value # set if not exist value in key
    SETRANGE key offset value # overwrite part of a string at key starting at the specified offset
    STRLEN key # get the length of the value stored in a key
    MSET key value [key value ...] # set multiple keys to multiple values
    MSETNX key value [key value ...] # set multiple keys to multiple values, only if none of the keys exist
    GET key # get value in key
  13. Julien Le Coupanec revised this gist Oct 28, 2016. No changes.
  14. Julien Le Coupanec revised this gist Oct 28, 2016. 1 changed file with 18 additions and 10 deletions.
    28 changes: 18 additions & 10 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -9,16 +9,24 @@ redis-cli # opens a redis prompt
    # Strings.


    APPEND key value # append a value to a key
    BITCOUNT key [start end] # count set bits in a string
    SET key value # set value in key
    SETNX key value # set if not exist value in key
    GET key # get value in key
    INCR key # increment value in key
    DEL key # delete key

    EXPIRE key 120 # key will be deleted in 120 seconds
    TTL key # returns the number of seconds until a key is deleted
    APPEND key value # append a value to a key
    BITCOUNT key [start end] # count set bits in a string
    SET key value # set value in key
    SETNX key value # set if not exist value in key
    MSET key value [key value ...] # set multiple keys to multiple values
    MSETNX key value [key value ...] # set multiple keys to multiple values, only if none of the keys exist
    GET key # get value in key
    GETRANGE key value # get a substring value of a key and return its old value
    MGET key [key ...] # get the values of all the given keys
    INCR key # increment value in key
    INCRBY key increment # increment the integer value of a key by the given amount
    INCRBYFLOAT key increment # increment the float value of a key by the given amount
    DECR key # decrement the integer value of key by one
    DECRBY key decrement # decrement the integer value of a key by the given number
    DEL key # delete key

    EXPIRE key 120 # key will be deleted in 120 seconds
    TTL key # returns the number of seconds until a key is deleted


    # Lists.
  15. Julien Le Coupanec revised this gist Oct 28, 2016. 1 changed file with 10 additions and 8 deletions.
    18 changes: 10 additions & 8 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -9,14 +9,16 @@ redis-cli # opens a redis prompt
    # Strings.


    SET key value # set value in key
    SETNX key value # set if not exist value in key
    GET key # get value in key
    INCR key # increment value in key
    DEL key # delete key

    EXPIRE key 120 # key will be deleted in 120 seconds
    TTL key # returns the number of seconds until a key is deleted
    APPEND key value # append a value to a key
    BITCOUNT key [start end] # count set bits in a string
    SET key value # set value in key
    SETNX key value # set if not exist value in key
    GET key # get value in key
    INCR key # increment value in key
    DEL key # delete key

    EXPIRE key 120 # key will be deleted in 120 seconds
    TTL key # returns the number of seconds until a key is deleted


    # Lists.
  16. Julien Le Coupanec revised this gist Oct 28, 2016. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -2,8 +2,8 @@
    # All the commands you need to know


    redis-server # start redis
    redis-cli # opens a redis prompt
    redis-server /path/redis.conf # start redis with the related configuration file
    redis-cli # opens a redis prompt


    # Strings.
  17. Julien Le Coupanec revised this gist Oct 27, 2016. 1 changed file with 6 additions and 1 deletion.
    7 changes: 6 additions & 1 deletion redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -2,7 +2,11 @@
    # All the commands you need to know


    # Variables.
    redis-server # start redis
    redis-cli # opens a redis prompt


    # Strings.


    SET key value # set value in key
    @@ -46,6 +50,7 @@ SUNION myset otherset # combines two or more sets and returns the list of all e
    ZADD mysset score value # adds the given value with the score to the set
    ZRANGE mysset 0 2 # returns a subset of the sorted set

    ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count] # return a range of members in a sorted set, by score

    # Hashes
    # Hashes are maps between string fields and string values, so they are the perfect data type to represent objects.
  18. Julien Le Coupanec revised this gist Oct 27, 2016. 1 changed file with 10 additions and 0 deletions.
    10 changes: 10 additions & 0 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -1,8 +1,10 @@
    # Redis Cheatsheet
    # All the commands you need to know


    # Variables.


    SET key value # set value in key
    SETNX key value # set if not exist value in key
    GET key # get value in key
    @@ -12,35 +14,43 @@ DEL key # delete key
    EXPIRE key 120 # key will be deleted in 120 seconds
    TTL key # returns the number of seconds until a key is deleted


    # Lists.
    # A list is a series of ordered values.


    RPUSH list value # puts the new value at the end of the list
    LPUSH list value # puts the new value at the start of the list
    LRANGE list 0 1 # gives a subset of the list
    LLEN list # returns the current length of the list
    LPOP list # removes the first element from the list and returns it
    RPOP list # removes the last element from the list and returns it


    # Sets.
    # A set is similar to a list, except it does not have a specific order and each element may only appear once.


    SADD myset value # adds the given value to the set
    SREM myset value # removes the given value from the set
    SISMEMBER myset value # tests if the given value is in the set.
    SMEMBERS myset # returns a list of all the members of this set
    SUNION myset otherset # combines two or more sets and returns the list of all elements


    # Sorted Sets
    # A sorted set is similar to a regular set, but now each value has an associated score.
    # This score is used to sort the elements in the set.


    ZADD mysset score value # adds the given value with the score to the set
    ZRANGE mysset 0 2 # returns a subset of the sorted set


    # Hashes
    # Hashes are maps between string fields and string values, so they are the perfect data type to represent objects.


    HSET user:1000 name "John Smith" # sets name to user #1000
    HSET user:1000 email "[email protected]" # sets email to user #1000
    HGET user:1001 name # returns the name for the user #1000
  19. Julien Le Coupanec revised this gist Oct 27, 2016. 1 changed file with 2 additions and 1 deletion.
    3 changes: 2 additions & 1 deletion redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -48,6 +48,7 @@ HGETALL user:1000 # gets bak the saved data for the hash

    HMSET user:1001 name "John Smith" email "[email protected]" # sets multiple fields at once


    HINCRBY user:1000 visits 1 # increments value in hash by X
    HDEL user:1000 visits # deletes value in hash


  20. Julien Le Coupanec revised this gist Oct 27, 2016. 1 changed file with 21 additions and 1 deletion.
    22 changes: 21 additions & 1 deletion redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -1,7 +1,7 @@
    # Redis Cheatsheet
    # All the commands you need to know

    # Basics.
    # Variables.

    SET key value # set value in key
    SETNX key value # set if not exist value in key
    @@ -31,3 +31,23 @@ SISMEMBER myset value # tests if the given value is in the set.
    SMEMBERS myset # returns a list of all the members of this set
    SUNION myset otherset # combines two or more sets and returns the list of all elements

    # Sorted Sets
    # A sorted set is similar to a regular set, but now each value has an associated score.
    # This score is used to sort the elements in the set.

    ZADD mysset score value # adds the given value with the score to the set
    ZRANGE mysset 0 2 # returns a subset of the sorted set

    # Hashes
    # Hashes are maps between string fields and string values, so they are the perfect data type to represent objects.

    HSET user:1000 name "John Smith" # sets name to user #1000
    HSET user:1000 email "[email protected]" # sets email to user #1000
    HGET user:1001 name # returns the name for the user #1000
    HGETALL user:1000 # gets bak the saved data for the hash

    HMSET user:1001 name "John Smith" email "[email protected]" # sets multiple fields at once




  21. Julien Le Coupanec revised this gist Oct 27, 2016. 1 changed file with 6 additions and 0 deletions.
    6 changes: 6 additions & 0 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -25,3 +25,9 @@ RPOP list # removes the last element from the list and returns it
    # Sets.
    # A set is similar to a list, except it does not have a specific order and each element may only appear once.

    SADD myset value # adds the given value to the set
    SREM myset value # removes the given value from the set
    SISMEMBER myset value # tests if the given value is in the set.
    SMEMBERS myset # returns a list of all the members of this set
    SUNION myset otherset # combines two or more sets and returns the list of all elements

  22. Julien Le Coupanec revised this gist Oct 27, 2016. 1 changed file with 12 additions and 1 deletion.
    13 changes: 12 additions & 1 deletion redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -1,6 +1,8 @@
    # Redis Cheatsheet
    # All the commands you need to know

    # Basics.

    SET key value # set value in key
    SETNX key value # set if not exist value in key
    GET key # get value in key
    @@ -10,7 +12,16 @@ DEL key # delete key
    EXPIRE key 120 # key will be deleted in 120 seconds
    TTL key # returns the number of seconds until a key is deleted

    # Lists.
    # A list is a series of ordered values.

    RPUSH list value # puts the new value at the end of the list
    LPUSH list value # puts the new value at the start of the list

    LRANGE list 0 1 # gives a subset of the list
    LLEN list # returns the current length of the list
    LPOP list # removes the first element from the list and returns it
    RPOP list # removes the last element from the list and returns it

    # Sets.
    # A set is similar to a list, except it does not have a specific order and each element may only appear once.

  23. Julien Le Coupanec revised this gist Oct 27, 2016. 1 changed file with 11 additions and 7 deletions.
    18 changes: 11 additions & 7 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -1,12 +1,16 @@
    # Redis Cheatsheet
    # All the commands you need to know

    SET key value # set value in key
    SETNX key value # set if not exist value in key
    GET key # get value in key
    INCR key # increment value in key
    DEL key # delete key
    SET key value # set value in key
    SETNX key value # set if not exist value in key
    GET key # get value in key
    INCR key # increment value in key
    DEL key # delete key

    EXPIRE key 120 # key will be deleted in 120 seconds
    TTL key # returns the number of seconds until a key is deleted
    EXPIRE key 120 # key will be deleted in 120 seconds
    TTL key # returns the number of seconds until a key is deleted

    RPUSH list value # puts the new value at the end of the list
    LPUSH list value # puts the new value at the start of the list

    LRANGE list 0 1 # gives a subset of the list
  24. Julien Le Coupanec revised this gist Oct 27, 2016. 1 changed file with 6 additions and 0 deletions.
    6 changes: 6 additions & 0 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -2,5 +2,11 @@
    # All the commands you need to know

    SET key value # set value in key
    SETNX key value # set if not exist value in key
    GET key # get value in key
    INCR key # increment value in key
    DEL key # delete key

    EXPIRE key 120 # key will be deleted in 120 seconds
    TTL key # returns the number of seconds until a key is deleted

  25. Julien Le Coupanec created this gist Oct 27, 2016.
    6 changes: 6 additions & 0 deletions redis_cheatsheet.bash
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,6 @@
    # Redis Cheatsheet
    # All the commands you need to know

    SET key value # set value in key
    GET key # get value in key