diff --git a/ussh b/ussh index baa2957..2b8fa23 100755 --- a/ussh +++ b/ussh @@ -66,6 +66,10 @@ Les options suivantes sont exclusives à ce script: for host in "${hosts[@]}"; do ${exec:+exec} "$ssh" "${options[@]}" "$host" "${args[@]}" done'" + --cc + Assumer que nutools est installé sur l'hôte distant, et y lancer uwatch + avec l'option --cc, pour permettre de garder la connexion active dans le + cadre d'une redirection de port. Si la variable UTOOLS_USSH_RSYNC_SUPPORT contient une valeur non vide, l'analyse des arguments s'arrête à la première valeur qui n'est pas une option, afin de @@ -272,6 +276,7 @@ remove= remove_only= exec=1 parse= +uwatch= parse_opts ${UTOOLS_USSH_RSYNC_SUPPORT:++} "${PRETTYOPTS[@]}" \ --help '$exit_with display_help' \ -1,-2,-4,-6,-A,-a,-C,-f,-g,-K,-k,-M,-N,-n,-q,-s,-T,-t,-V,-v,-X,-x,-Y,-y '$__update_SSHOPTS "$option_"' \ @@ -287,6 +292,7 @@ parse_opts ${UTOOLS_USSH_RSYNC_SUPPORT:++} "${PRETTYOPTS[@]}" \ --exec exec=1 \ --no-exec exec= \ --parse '$parse=1; remove=' \ + --cc uwatch=1 \ @ args -- "$@" && set -- "${args[@]}" || die "$args" if [ -n "$remove" ]; then @@ -309,6 +315,8 @@ fi [ -n "$SSH" ] || SSH=ssh if [ -n "$parse" ]; then show_vars "$@" +elif [ -n "$uwatch" ]; then + do_ssh "/usr/local/nutools/uwatch --cc" else do_ssh "$@" fi diff --git a/uwatch b/uwatch index 7e65c8a..0e6af74 100755 --- a/uwatch +++ b/uwatch @@ -26,7 +26,7 @@ OPTIONS -z, --suffix SUFFIX Spécifier une chaine à afficher après l'heure --cc - Equivalent à -c -s 5 -a 'Connecté depuis ' -z '...' + Equivalent à -c -s 5 -a 'Connecté sur \$MYHOST depuis ' -z '...' Permet de garantir une activité sur une connexion SSH utilisée uniquement pour faire une redirection de port" } @@ -48,7 +48,7 @@ args=( -s:,--step: step= -a:,--prefix: prefix= -z:,--suffix: suffix= - --cc '$what=count; units=1; step=5; prefix="Connecté depuis "; suffix="..."' + --cc '$what=count; units=1; step=5; prefix="Connecté sur $MYHOST depuis "; suffix="..."' ) parse_args "$@"; set -- "${args[@]}"