From 5b8e387dc4928a2075c3a5a085fe803945a37e47 Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Wed, 3 Jun 2015 23:21:56 +1200 Subject: Add vared function for editing vars --- bash/bashrc.d/vared.bash | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 bash/bashrc.d/vared.bash (limited to 'bash/bashrc.d/vared.bash') diff --git a/bash/bashrc.d/vared.bash b/bash/bashrc.d/vared.bash new file mode 100644 index 00000000..a2066b4c --- /dev/null +++ b/bash/bashrc.d/vared.bash @@ -0,0 +1,19 @@ +# Requires Bash >= 4.0 for read -i and ${!name} +if ((10#${BASH_VERSINFO[0]%%[![:digit:]]*} < 4)) ; then + return +fi + +# Edit named variables' values +vared() { + if ! (($#)) ; then + printf 'bash: %s: No variable names given\n' \ + "$FUNCNAME" >&2 + return 2 + fi + local name + for name in "$@" ; do + IFS= read -e -i "${!name}" -p "$name"= -r "$name" + done +} +complete -A variable vared + -- cgit v1.2.3