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 :

Script qui ne rend pas la main


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Inscrit en
    Mars 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 9
    Points : 6
    Points
    6
    Par défaut Script qui ne rend pas la main
    Bonjour,

    J'exécute un script que je ne maîtrise quasiment pas (à savoir script existant, peu modifiable au vu du projet actuel). Je sais qu'il fait appel à d'autres scripts en lançant des exe en background.

    Le soucis, c'est qu'à la fin du script, j'ai le dernier log mais le prompt de ma console n'est plus affiché. Je suis obligé d'appuyer sur entrée pour récupérer la main. Le soucis c'est que je dois automatiser l'appel de ce script suivi d'autres tâches et que du coup, je reste bloqué sur celui-ci.

    Est-ce que qqun a une idée pour
    - soit récupérer la main d'une autre façon
    - soit comment savoir quel process ne rend pas le prompt

    Merci

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 559
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 559
    Points : 19 390
    Points
    19 390
    Par défaut
    Bonjour,

    as-tu essayé d'appeler le script principal dans un autre script (c'est ce que tu vas faire de toutes façons, non ?), et d'ajouter une commande, pour voir si elle s'exécute ?
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 252
    Points : 13 478
    Points
    13 478
    Par défaut
    Bonjour

    Lorsqu'une tâche est lancée en fond, elle ne rend pas la main à la console. Donc elle ne provoque pas d'affichage de l'invite de commande. Par contre, elle affiche ses résultats.
    Quand tu appuies sur 'entrée', tu provoques l'affichage de l'invite de commande. Mais tu avais la main avant.

    Donc, à vérifier.
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  4. #4
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 704
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 704
    Points : 31 006
    Points
    31 006
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par cyberlulu Voir le message
    Bonjour,

    J'exécute un script que je ne maîtrise quasiment pas (à savoir script existant, peu modifiable au vu du projet actuel). Je sais qu'il fait appel à d'autres scripts en lançant des exe en background.

    Le soucis, c'est qu'à la fin du script, j'ai le dernier log mais le prompt de ma console n'est plus affiché. Je suis obligé d'appuyer sur entrée pour récupérer la main. Le soucis c'est que je dois automatiser l'appel de ce script suivi d'autres tâches et que du coup, je reste bloqué sur celui-ci.

    Est-ce que qqun a une idée pour
    - soit récupérer la main d'une autre façon
    - soit comment savoir quel process ne rend pas le prompt

    Merci


    Citation Envoyé par Flodelarab Voir le message
    Bonjour

    Lorsqu'une tâche est lancée en fond, elle ne rend pas la main à la console... Quand tu appuies sur 'entrée', tu provoques l'affichage de l'invite de commande. Mais tu avais la main avant.

    Donc, à vérifier.
    Salut
    C'est exact. Essaye, au lieu d'appuyer sur "entrée", de taper une commande (style "ls + entrée"). Si la commande s'exécute, ça voudra dire que tu avais déjà la main et donc que ton script n'a aucun souci. Simplement tu as la main mais pas le prompt ce qui n'est pas très grave.

    Citation Envoyé par cyberlulu Voir le message
    Je sais qu'il fait appel à d'autres scripts en lançant des exe en background.
    Lorsqu'un script lance des tâches en arrière-plan, il n'attend pas la fin de celles-ci pour se terminer et rendre la main. A ce moment là, tu récupères le prompt. Puis les autres tâches affichent leurs infos éventuellement à l'écran mais le shell n'étant pas invoqué, il ne réaffiche pas le prompt et donc tu crois l'avoir perdu.
    Tu peux éventuellement rajouter un wait en fin du script initial (si c'est possible). A ce moment là, arrivé à cette instruction, il se mettra en attente de la fin de toutes les tâches qu'il aura lancées en arrière-plan.
    Une fois ces tâches finies (et leurs informations affichées), il se terminera et te rendra la main avec un beau prompt.
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

Discussions similaires

  1. Requete qui ne rend pas la main sous TOAD
    Par Lolitaaa dans le forum Langage SQL
    Réponses: 3
    Dernier message: 05/07/2010, 13h24
  2. Fonction php qui ne rend pas la main dans le SHELL
    Par diabli73 dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 20/10/2008, 19h45
  3. Thread Python qui ne rend pas la main
    Par Dazdh dans le forum Général Python
    Réponses: 2
    Dernier message: 15/07/2008, 12h11
  4. [Batch] make qui ne rend pas la main au batch
    Par Pierre.g dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 09/07/2008, 19h04
  5. Script CMD qui ne rend pas la main
    Par ipeteivince dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 10/06/2005, 11h00

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