From 52bb0d584f1eacb70a18ad18a7699380463a41dc Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Sat, 15 Apr 2017 20:43:10 +0400 Subject: [PATCH] base.core: ajout de la fonction echo_setv2() pendant de echo_seta2() --- lib/ulib/base.core | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/lib/ulib/base.core b/lib/ulib/base.core index 1e08377..8e42757 100644 --- a/lib/ulib/base.core +++ b/lib/ulib/base.core @@ -191,6 +191,22 @@ function echo_setv() { fi echo "$__s_var=$(qvalr "$*")" } +function echo_setv2() { +# Afficher la commande qui recrée la variable $1 +# Cette fonction est équivalente à echo_setv "$1=${!1}" +# Si d'autres arguments que le nom de la variable sont spécifiés, cette fonction +# se comporte comme echo_setv() + local __s_var="$1"; shift + if [[ "$__s_var" == *=* ]]; then + set -- "${__s_var#*=}" "$@" + __s_var="${__s_var%%=*}" + fi + if [ $# -eq 0 ]; then + echo_setv "$__s_var" "${!__s_var}" + else + echo_setv "$__s_var" "$@" + fi +} function seta() { # initialiser le tableau $1 avec les valeurs $2..@ # note: en principe, la syntaxe est 'seta array values...'. cependant, la @@ -219,8 +235,8 @@ function echo_seta() { } function echo_seta2() { # Afficher la commande qui recrée le tableau $1 -# Si des arguments sont spécifiés, cette fonction se comporte comme -# echo_seta() +# Si d'autres arguments que le nom de tableau sont spécifiés, cette fonction se +# comporte comme echo_seta() local __s_var="$1"; shift if [[ "$__s_var" == *=* ]]; then set -- "${__s_var#*=}" "$@"