Commande ssh rediriger vers variable

Fermé
Utilisateur anonyme - 10 mai 2012 à 09:00
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 - 10 mai 2012 à 09:58
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

A voir également:

2 réponses

mamiemando Messages postés 33081 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 27 avril 2024 7 749
10 mai 2012 à 09:41
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
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
10 mai 2012 à 09:58
hello
> redirige dans un fichier, pour une variable, c'est
TEST=$(ssh nagios@example.com -i /usr/local/nagios/.ssh/id_rsa 'sleep 5 | telnet test.com 21')
echo $TEST
0