but de la manip :
j'utilise la librairie ruby net/ssh avec laquelle on peut envoyer, par
programme, des commandes au "remote shell".
ça marche très bien excepté pour une commande "cd /path/to", qui est,
comme sur mac, une commande "built-in", je ne sais d'ailleurs pas trop
ce que ça signifie exactement.
pour cette commande là, ruby net/ssh, me retourne une erreur :
exec: 4: cd: not found
à la suite de :
result=session.exec!("cd /mnt/fat;ls -Al")
et donc je cherche à savoir s'il y a un moyen de contourner ce pb.
bien sûr si je me loggue sur le serveur distant (un tél portable) en cli
(zsh), je n'ai aucun pb pour entrer, à la main, ce genre de commande, et
ça roule.
aussi, je voudrais faire une manip en shell, où je tenterais de faire
par script ce que ruby est supposé faire :
détecter le prompt et envoyer une chaîne de caractères au shell distant
"cd /path/to".
pour établir une connection, la dernière commande de zsh est :
ssh -p 2222 root@169.254.0.2
la réponse étant de la forme :
< pas mal de blabla />
Last login: Sun Jul 27 21:23:23 UTC 2008
#
la dernière ligne étant le prompt.
bon, détecter que le remote server a fini son blabla, ce n'est pas très
difficile mais comment émuler une entrée au clavier ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Eric Levenez
Le 28/07/08 15:32, dans <1iksk2o.m14pvr1e2eaeN%, « Une Bévue » a écrit :
pour cette commande là, ruby net/ssh, me retourne une erreur : exec: 4: cd: not found à la suite de : result=session.exec!("cd /mnt/fat;ls -Al")
Je ne vois pas du tout le rapport avec Mac OS X.
Tu veux exécuter "cd" qui n'est pas un exécutable mais une commande interne d'un shell. Il te dis dont qu'aucun exécutable ne s'appelle "cd". Le message "cd: not found" est clair de chez clair.
Alors avant que tu ne reviennes dans 10 minutes poser une nouvelle question, regarde l'option -c de "sh", elle et faite pour ce que tu veux faire.
-- Éric Lévénez -- <http://www.levenez.com/> Unix is not only an OS, it's a way of life.
Le 28/07/08 15:32, dans
<1iksk2o.m14pvr1e2eaeN%unbewusst.sein@weltanschauung.com.invalid>, « Une
Bévue » <unbewusst.sein@weltanschauung.com.invalid> a écrit :
pour cette commande là, ruby net/ssh, me retourne une erreur :
exec: 4: cd: not found
à la suite de :
result=session.exec!("cd /mnt/fat;ls -Al")
Je ne vois pas du tout le rapport avec Mac OS X.
Tu veux exécuter "cd" qui n'est pas un exécutable mais une commande interne
d'un shell. Il te dis dont qu'aucun exécutable ne s'appelle "cd". Le message
"cd: not found" est clair de chez clair.
Alors avant que tu ne reviennes dans 10 minutes poser une nouvelle question,
regarde l'option -c de "sh", elle et faite pour ce que tu veux faire.
--
Éric Lévénez -- <http://www.levenez.com/>
Unix is not only an OS, it's a way of life.
Le 28/07/08 15:32, dans <1iksk2o.m14pvr1e2eaeN%, « Une Bévue » a écrit :
pour cette commande là, ruby net/ssh, me retourne une erreur : exec: 4: cd: not found à la suite de : result=session.exec!("cd /mnt/fat;ls -Al")
Je ne vois pas du tout le rapport avec Mac OS X.
Tu veux exécuter "cd" qui n'est pas un exécutable mais une commande interne d'un shell. Il te dis dont qu'aucun exécutable ne s'appelle "cd". Le message "cd: not found" est clair de chez clair.
Alors avant que tu ne reviennes dans 10 minutes poser une nouvelle question, regarde l'option -c de "sh", elle et faite pour ce que tu veux faire.
-- Éric Lévénez -- <http://www.levenez.com/> Unix is not only an OS, it's a way of life.
unbewusst.sein
Eric Levenez wrote:
Je ne vois pas du tout le rapport avec Mac OS X.
Tu veux exécuter "cd" qui n'est pas un exécutable mais une commande interne d'un shell. Il te dis dont qu'aucun exécutable ne s'appelle "cd". Le message "cd: not found" est clair de chez clair.
Alors avant que tu ne reviennes dans 10 minutes poser une nouvelle question, regarde l'option -c de "sh", elle et faite pour ce que tu veux faire.
ok, ce n'est pas le bon groupe. -- Une Bévue
Eric Levenez <usenet@levenez.com> wrote:
Je ne vois pas du tout le rapport avec Mac OS X.
Tu veux exécuter "cd" qui n'est pas un exécutable mais une commande interne
d'un shell. Il te dis dont qu'aucun exécutable ne s'appelle "cd". Le message
"cd: not found" est clair de chez clair.
Alors avant que tu ne reviennes dans 10 minutes poser une nouvelle question,
regarde l'option -c de "sh", elle et faite pour ce que tu veux faire.
Tu veux exécuter "cd" qui n'est pas un exécutable mais une commande interne d'un shell. Il te dis dont qu'aucun exécutable ne s'appelle "cd". Le message "cd: not found" est clair de chez clair.
Alors avant que tu ne reviennes dans 10 minutes poser une nouvelle question, regarde l'option -c de "sh", elle et faite pour ce que tu veux faire.