IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

[SSH] Exécuter plusieurs commandes à distance


Sujet :

Shell et commandes GNU

  1. #1
    Membre actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Mars 2005
    Messages
    363
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2005
    Messages : 363
    Points : 210
    Points
    210
    Par défaut [SSH] Exécuter plusieurs commandes à distance
    Bonjour,

    je tente d'exécuter un ensemble de commandes sur une machine distante. Quand je n'en fais qu'une, aucun problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ssh ${USER}@${HOTE_DISTANT} ls /tmp
    En revanche, je voudrais pouvoir exécuter plusieurs commandes sous la même connexion, avec un truc du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ssh ${USER}@${HOTE_DISTANT} << FIN
    mkdir ${REP_USERS}/${rep_sid}
    chown ${REP_OWNER} ${REP_USERS}/${rep_sid}
    chmod ${REP_DROITS} ${REP_USERS}/${rep_sid}
    FIN
    Quelqu'un a-t-il une idée svp ?

    NB : Je ne veux pas créer de script sur la machine distante qui me permettrait d'exécuter ces lignes

    Merci d'avance.

  2. #2
    Membre actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Mars 2005
    Messages
    363
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2005
    Messages : 363
    Points : 210
    Points
    210
    Par défaut
    Bon, ben en fait, j'ai trouvé tout seul comme un grand 5 minutes après avoir créé ce post, j'ai fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ssh ${USER}@${HOTE_DISTANT} "mkdir ${REP_USERS}/${rep_sid}
    chown ${REP_OWNER} ${REP_USERS}/${rep_sid}
    chmod ${REP_DROITS} ${REP_USERS}/${rep_sid}"
    Il suffit de mettre des guillemets et ça fonctionne !

  3. #3
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Points : 12 262
    Points
    12 262
    Par défaut
    Citation Envoyé par tck-lt Voir le message
    Bon, ben en fait, j'ai trouvé tout seul comme un grand 5 minutes après avoir créé ce post, j'ai fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ssh ${USER}@${HOTE_DISTANT} "mkdir ${REP_USERS}/${rep_sid}
    chown ${REP_OWNER} ${REP_USERS}/${rep_sid}
    chmod ${REP_DROITS} ${REP_USERS}/${rep_sid}"
    Il suffit de mettre des guillemets et ça fonctionne !
    J'ajoute juste un petit éclaircissement, en fait ça fonctionne parce que l'ensemble de la commande se voit valoriser ses variables locales AVANT d'être envoyé à travers SSH.

    PS: vu que c'est du travail sur fichiers/dossiers, je préconise l'usage pour enchainer les commandes de "&&"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ssh ${USER}@${HOTE_DISTANT} "mkdir ${REP_USERS}/${rep_sid} && chown ${REP_OWNER} ${REP_USERS}/${rep_sid} && chmod ${REP_DROITS} ${REP_USERS}/${rep_sid}"
    en particulier parce que le travail à distance sur les fichiers est tjrs risqué..

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SSH] exécuter des commandes Unix via C#
    Par Rukia dans le forum C#
    Réponses: 4
    Dernier message: 23/04/2009, 10h33
  2. Exécuter plusieurs commandes avec ShellExecute
    Par Kimish dans le forum Windows
    Réponses: 4
    Dernier message: 23/02/2009, 17h48
  3. [SSH] Recuperer resultat commande à distance
    Par maxwell86 dans le forum Administration système
    Réponses: 11
    Dernier message: 21/10/2008, 09h02
  4. Réponses: 10
    Dernier message: 03/04/2008, 15h58
  5. Exécuter plusieurs commandes bat
    Par n@n¤u dans le forum Langage
    Réponses: 4
    Dernier message: 31/08/2006, 15h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo