Skip to content

Instantly share code, notes, and snippets.

@neoshrew
Created September 28, 2016 15:14
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save neoshrew/a4854ff8eceac4cd571797c6f5a7473e to your computer and use it in GitHub Desktop.
Save neoshrew/a4854ff8eceac4cd571797c6f5a7473e to your computer and use it in GitHub Desktop.
#!/usr/bin/env bash
set -eu -o pipefail
HOST=172.17.0.6
REDIS_CMD=(redis-cli -h "$HOST" scan)
CMD_EXTRA=()
if [[ ! -z ${1:-} ]]; then CMD_EXTRA+=(MATCH "$1"); fi
if [[ ! -z ${2:-} ]]; then CMD_EXTRA+=(COUNT "$2"); fi
export CMD_EXTRA
CURSOR=0
while true;
do
CMD=("${REDIS_CMD[@]}" $CURSOR)
if [ ${#CMD_EXTRA[@]} -gt 0 ];
then
CMD+=("${CMD_EXTRA[@]}")
fi
{
read cursor
CURSOR=$cursor
while read item;
do
if [[ ! -z $item ]]; then echo $item; fi;
done ;
}< <("${CMD[@]}")
if [ "$CURSOR" -eq 0 ]; then break; fi;
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment