From defcbca74eed4a5541cf9fc18f998d59405e2e9f Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Sat, 10 Aug 2024 13:06:15 -0300 Subject: Feat: adds repl script --- repl | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100755 repl (limited to 'repl') diff --git a/repl b/repl new file mode 100755 index 0000000..f205b36 --- /dev/null +++ b/repl @@ -0,0 +1,31 @@ +#!/bin/bash +# +# Generic read-eval-print loop script. +# + +# Parameters +BASENAME="`basename $0`" + +# Shell +function _repl { + local last_exit_code="0" + local command="$1" + + shift + + # While Ctrl-C isn't typed, read STDIN and invoke a command + while read -rep "${last_exit_code} ${command}> " STDIN; do + history -s "$STDIN" + ${command} $* ${STDIN[@]} + last_exit_code="$?" + done +} + +# Check +if [ -z "$COMMAND" ]; then + echo "usage: $BASENAME [base-args]" + exit 1 +fi + +# Dispatch +_repl $* -- cgit v1.2.3