From 61ccf79c25f20699a576f0640a3b7c0280f6f7ad Mon Sep 17 00:00:00 2001 From: Nicholas Chambers Date: Sat, 2 May 2020 14:55:19 -0500 Subject: [PATCH] Add another variable for storing the command sent to Redis --- lib/cli.sh | 16 +++++++++++----- redish-cli | 4 ++-- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/lib/cli.sh b/lib/cli.sh index b7216dd..e0b6491 100644 --- a/lib/cli.sh +++ b/lib/cli.sh @@ -6,14 +6,14 @@ get_cmd() { parse_cmd() { local cmd=( ) arg - declare -n serialized=$1 + declare -n cmd_sent=$1 + declare -n serialized=$2 - route_cmd "$2" + route_cmd "$3" serialized=*${#cmd[@]}$'\r\n' - serialized+=${cmd[0]^^} - for arg in "${cmd[@]:1}"; do + for arg in "${cmd[@]}"; do serialized+=$arg done } @@ -55,6 +55,12 @@ parse_word() { fi done - cmd+=( "\$${#arg}"$'\r\n'"$arg"$'\r\n' ) + if ! (( ${#cmd[@]} )); then + cmd_sent=${arg^^} + cmd+=( "\$${#arg}"$'\r\n'"$cmd_sent"$'\r\n' ) + else + cmd+=( "\$${#arg}"$'\r\n'"$arg"$'\r\n' ) + fi + route_cmd "$line" } diff --git a/redish-cli b/redish-cli index e47eafb..3198d30 100755 --- a/redish-cli +++ b/redish-cli @@ -28,6 +28,6 @@ fi ### while get_cmd line; do - parse_cmd redis_cmd "$line" - redis_send "$redis_cmd" + parse_cmd redis_cmd redis_line "$line" + redis_send "$redis_line" done