Is there any way I can redefine a bash function in terms of its old definition? For example I would like to add the following block of code to the preamble of the function
# Check if $1 is instead a bash variable and print value if it is local VAL=$(eval echo \"\$$1\") if [ -n "$VAL" ] && [ $# -eq 1 ]; then echo "$1=$VAL" return $? fi
It is currently defined in /etc/profile.d/PackageKit.sh and sourced by bash start-up scripts.
That way I can query the value of an environment variable at the command prompt by simply typing the variable name (and provided that no such command by that name exists). e.g.
user@hostname ~:$ LANG LANG=en_AU.utf8
I know I could just copy and paste the current definition and add my own changes in
~/.bashrc, but I am looking for a more elegant way that involves code reuse.
Better ways of achieving my goal or code improvements/extensions are also appreciated.