#!/bin/bash CHECK=$(redis-cli ping) [ "$CHECK" = "PONG" ] || exit 1 if [ "$1" = "-h" -o "$1" = "--help" ]; then echo "Usage $0 [ option ]" echo " -e --erase to empty the queue" echo " -l --list to list the queue" echo " -p --perm to run permanently" exit 0 elif [ "$1" = "-l" -o "$1" = "--list" ]; then redis-cli smembers mock exit 0 elif [ "$1" = "-e" -o "$1" = "--erase" ]; then redis-cli del mock exit 0 fi while true do CMD=$(redis-cli spop mock) if [ -z "$CMD" ]; then if [ "$1" = "-p" -o "$1" = "--perm" ]; then echo -n . sleep 1 continue else break fi fi TXT=$(echo $CMD | sed -e 's/^.*-r //;s/ .*$//') echo -en "\r$(date +%X) $TXT " $CMD --uniqueext=$PPID && echo " Ok." || echo " Error !" done echo "$(date +%X) Done"