Forum Programmation.shell passage de commandes ssh vers un serveur(vios) à shell restrein "rksh"

Posté par .
Tags : aucun
-1
11
mar.
2010
Salut!

Je souhaite m'éviter la besogne de me connecter à un ou plusieurs serveurs pour récolter des infos de ces machines. J'ai donc commencé un petit script qui permet d'exécuter une commande sur un serveur (VIOS) à shell limité.


#!/bin/ksh

print "entrez la commande"
read commande;

print "Sur quel VIOS";
read vios;

o=ioscli oem_setup_env; #mode root chez les VIOS

ssh padmin@$vios ksh $o ;
sleep 2;
exec $commande;
sleep 2;
print "Exiting script. BYE !!";
exit 0


Le soucis, c'est que je me connecte bien mais les commandes ne sont pas exécuté sur la machines souhaité.
  • # Ben heu

    Posté par (page perso) . Évalué à 3.

    tu lances ta commande en local la

    Je ne connais pas oem_setup_env donc je ne sais pas si il faut faire :

    o="ioscli oem_setup_env; sleep 2; exec $commande;"

    ou

    ssh padmin@$vios ksh $o <<EOF
    exec $commande;
    EOF

    Et sinon, faire des choses apres exec ca va pas donner grand chose
    • [^] # Re: Ben heu

      Posté par . Évalué à 2.

      Mais c'est que t'es un chef toi !! C'est exactement ce qu'il me fallait et ça fonctionne !! Merci Pascal !
    • [^] # Re: Ben heu

      Posté par . Évalué à 1.

      man ssh nous dit :
      ssh user@machine commande
      • [^] # Re: Ben heu

        Posté par (page perso) . Évalué à 2.

        Ce n'est pas la question

        oem_setup_env ouvre t'il un nouveau shell (auquel cas il faut passer les commandes de ce shell sur stdin) ou peut on passer "oem_setup_env; ..." comme commande a ssh
        • [^] # Re: Ben heu

          Posté par . Évalué à 1.

          oui, oem_setup_env t'ouvre un nouveau shell, en root s'il vous plait, c'est en fait un full ksh en root sous l'aix qui se trouve déguisé derrière un VIO :)

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.