utiliser l'option --parse de ussh pour construire la ligne de commande finale
This commit is contained in:
parent
af77462313
commit
9cf51d0ce7
16
cssh
16
cssh
|
@ -9,8 +9,9 @@ function display_help() {
|
||||||
USAGE
|
USAGE
|
||||||
$scriptname [user@]host [options]
|
$scriptname [user@]host [options]
|
||||||
|
|
||||||
Hormis l'argument user@host, il ne faut spécifier que des options. Sinon, le
|
En principe, hormis l'argument user@host, il ne faudrait spécifier que des
|
||||||
comportement n'est pas défini."
|
options. Dans le cas où d'autres arguments seraient spécifiés, les meilleurs
|
||||||
|
efforts sont faits pour lancer ces commandes avant screen."
|
||||||
}
|
}
|
||||||
|
|
||||||
if [ $# -eq 1 -a "$1" == --help ]; then
|
if [ $# -eq 1 -a "$1" == --help ]; then
|
||||||
|
@ -18,7 +19,12 @@ if [ $# -eq 1 -a "$1" == --help ]; then
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
exec "$scriptdir/ussh" -t "$@" -- /bin/bash -c \''
|
vars="$("$scriptdir/ussh" --parse "$@")" || die
|
||||||
|
eval "$vars"
|
||||||
|
[ "${#hosts[*]}" -gt 0 ] || die "Vous devez spécifier l'hôte sur lequel se connecter"
|
||||||
|
|
||||||
|
cmd="'$(quoted_args "${args[@]}")
|
||||||
|
"'
|
||||||
function __ask() {
|
function __ask() {
|
||||||
local r
|
local r
|
||||||
read -p "$1" -t 2 r
|
read -p "$1" -t 2 r
|
||||||
|
@ -65,3 +71,7 @@ Voulez-vous lancer une session screen? [On] "; then
|
||||||
|
|
||||||
__auto_screen
|
__auto_screen
|
||||||
'\'
|
'\'
|
||||||
|
|
||||||
|
for host in "${hosts[@]}"; do
|
||||||
|
${exec:+exec} "$ssh" "${options[@]}" -t "$host" -- /bin/bash -c "$cmd"
|
||||||
|
done
|
||||||
|
|
Loading…
Reference in New Issue