diff --git a/ussh b/ussh index 525b5f5..d6f2884 100755 --- a/ussh +++ b/ussh @@ -232,6 +232,7 @@ function __update_sshopts_misc() { # Ajouter l'option -l DEFAULT_USER au tableau sshopts si aucune définition # pour l'hôte $1 n'existe dans l'un des fichiers de configuration de ssh et # si l'utilisateur n'a pas déjà spécifié un compte utilisateur. + SSH_USER= SSH_PORT=22 # L'utilisateur est peut-être fourni avec l'hôte local user host @@ -259,7 +260,7 @@ function __update_sshopts_misc() { # Rajouter l'option -l au début. De cette façon, on laisse la possibilité à # l'utilisateur de surcharger cette option, dans le cas où nous n'avons pas # pu analyser les arguments correctement - SSH_USER="${DEFAULT_USER:-$USER}" + SSH_USER="$DEFAULT_USER" sshopts=(${DEFAULT_USER:+-l "$DEFAULT_USER"} "${sshopts[@]}") } function __update_sshopts_cm() { @@ -320,18 +321,19 @@ function __update_sshopts_cm() { } function show_vars() { - [ "${#hosts[*]}" -gt 1 ] && exec= - local -a sshopts - array_copy sshopts SSHOPTS - __update_sshopts_misc "${hosts[0]}" "$@" - __update_sshopts_cm "${hosts[0]}" - + [ "${#hosts[*]}" -gt 1 ] && exec= + set_array_cmd hosts set_var_cmd ssh "$SSH" set_var_cmd exec "$exec" - set_array_cmd options sshopts - set_array_cmd hosts set_array_cmd args @ "$@" + for host in "${hosts[@]}"; do + array_copy sshopts SSHOPTS + __update_sshopts_misc "$host" "$@" + __update_sshopts_cm "$host" + set_var_cmd host "$host" + set_array_cmd options sshopts + done } function do_ssh() { @@ -361,7 +363,7 @@ function __update_SSHOPTS() { SSHOPTS=("${SSHOPTS[@]}" "$@"); } # charger la configuration set_defaults nutools set_defaults ussh -[ -n "$DEFAULT_USER" ] || DEFAULT_USER="${USSH_USER:-root}" +[ -n "$DEFAULT_USER" ] || DEFAULT_USER="$USSH_USER" [ -n "$DEFAULT_DOMAIN" ] || DEFAULT_DOMAIN="$USSH_DOMAIN" [ -n "$DEFAULT_PERSIST" ] || DEFAULT_PERSIST=5m