Commande ssh rediriger vers variable
Utilisateur anonyme
-
dubcek Messages postés 18627 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 18627 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je cherche à mettre le contenu du résultat d'un ssh fait à distance, dans une variable :
ssh nagios@example.com -i /usr/local/nagios/.ssh/id_rsa 'sleep 5 | telnet test.com 21' 1>&TEST && echo $TEST
ne me retourne rien !!
est-ce quelqu'un a une idée ???
Par avance merci
Je cherche à mettre le contenu du résultat d'un ssh fait à distance, dans une variable :
ssh nagios@example.com -i /usr/local/nagios/.ssh/id_rsa 'sleep 5 | telnet test.com 21' 1>&TEST && echo $TEST
ne me retourne rien !!
est-ce quelqu'un a une idée ???
Par avance merci
2 réponses
-
La syntaxe générale c'est :
ssh login@hostname commande
Si commande met en jeu les opérateurs '&&', ou ';' ou n'importe quel opérateur de redirection (<, >, >>, 1>, 1>>, 2>, 2>>) il faut l'entourer avec des parenthèses.
ssh login@hostname (cmd1 | cmd2 | cmd3)
En effet si tu écris "ssh login@hostname cmd1 | cmd2 | cmd3", le shell l'interprète "((ssh login@hostname cmd1) | cmd2) | cmd3".
Bonne chance -
hello
> redirige dans un fichier, pour une variable, c'estTEST=$(ssh nagios@example.com -i /usr/local/nagios/.ssh/id_rsa 'sleep 5 | telnet test.com 21') echo $TEST