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

Applications et environnements graphiques Discussion :

[terminal] maintenir la session après l'exécution d'un programme


Sujet :

Applications et environnements graphiques

  1. #1
    Membre du Club
    Homme Profil pro
    chômeur
    Inscrit en
    Septembre 2015
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : chômeur

    Informations forums :
    Inscription : Septembre 2015
    Messages : 175
    Points : 62
    Points
    62
    Par défaut [terminal] maintenir la session après l'exécution d'un programme
    Bonjour,

    J'écris un fichier lanceur pour parvenir à ce résultat :
    lancement du terminal , auto-execution de nano , l'utilisateur utilise puis ferme nano , le terminal peut continuer à être utilisé.

    Au contraire, si on y met cette commande le terminal quitte en même temps que nano :


    Ce serait un problème de processus ?
    suggestion: une commande qui ouvre un terminal puis indique le nouveau shell dans lequel exécuter nano , mais comment ?

  2. #2
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 446
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 446
    Points : 43 088
    Points
    43 088
    Par défaut
    C'est normal. Si tu veux laisser ton terminal ouvert, il faut ajouter un espace et & à la fin.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  3. #3
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2012
    Messages
    321
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Mai 2012
    Messages : 321
    Points : 604
    Points
    604
    Par défaut
    Bonjour,
    de mémoire, quelque chose comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xfce4-terminal -e nano;read
    devrait permettre de laisser le terminal ouvert après exécution de la commande

  4. #4
    Membre du Club
    Homme Profil pro
    chômeur
    Inscrit en
    Septembre 2015
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : chômeur

    Informations forums :
    Inscription : Septembre 2015
    Messages : 175
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par chrtophe Voir le message
    C'est normal. Si tu veux laisser ton terminal ouvert, il faut ajouter un espace et & à la fin.
    Donc ta commande serait ?

    Le fichier desktop n'éxecute pas les commandes exactement comme dans un shell.
    Ex: Pas possible d'avoir plusieurs commande sur une seule ligne .
    "&&" et ";" provoquent des erreurs .
    freedesktop utilise surement la commande exec : https://specifications.freedesktop.o...t/ar01s06.html
    Par contre , on peut toujours faire "bash -c" .
    ---
    Citation Envoyé par killian68
    de mémoire, quelque chose comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xfce4-terminal -e nano;read
    devrait permettre de laisser le terminal ouvert après exécution de la commande
    Alors non (raison plus haut) , aprés execution du fichier avec ta commande complete , popup avec message d'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Failed to execute child process "nano;read" (No such file or directory)

  5. #5
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 035
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 035
    Points : 8 400
    Points
    8 400
    Par défaut
    salut,

    j'utilise pas xfce mais à vue de nez j'aurais plutôt tendance à faire un truc genre xfce4-terminal -e nano;exec $SHELL, voire éventuellement wrapper le tout xfce4-terminal -e $SHELL -c "nano; exec $SHELL", sans quoi il n'y a pas de moyen direct pour que bash redonne la main (mais y'a pleins de contournements plus ou moins heureux on va dire)

    à tester...

  6. #6
    Membre du Club
    Homme Profil pro
    chômeur
    Inscrit en
    Septembre 2015
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : chômeur

    Informations forums :
    Inscription : Septembre 2015
    Messages : 175
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par BufferBob Voir le message
    j'utilise pas xfce mais à vue de nez j'aurais plutôt tendance à faire un truc genre xfce4-terminal -e nano;exec $SHELL, voire éventuellement wrapper le tout xfce4-terminal -e $SHELL -c "nano; exec $SHELL"
    Belle tentative, mais rien ne fonctionne .

    Citation Envoyé par BufferBob Voir le message
    (mais y'a pleins de contournements plus ou moins heureux on va dire)
    Lesquels ?

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Bonjour

    Un script est un regroupement de commandes.
    Ton *.desktop n'accepte pas plusieurs commandes.
    Regroupe tes commandes dans un script mon_script.bash, et mets "mon_script.bash" dans le fichier *.desktop.
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Encore une chose. RTFM

    man xfce-terminal

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    -H, --hold
     
    Ne ferme pas le terminal lorsque la commande exécutée se termine
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  9. #9
    Membre du Club
    Homme Profil pro
    chômeur
    Inscrit en
    Septembre 2015
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : chômeur

    Informations forums :
    Inscription : Septembre 2015
    Messages : 175
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Encore une chose. RTFM

    man xfce-terminal

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    -H, --hold
     
    Ne ferme pas le terminal lorsque la commande exécutée se termine
    Sauf qu'il n'y a pas de prompt :
    On lance le .desktop , on utilise nano , on ferme nano , le terminal reste ouvert mais on n'a pas de prompt , juste un curseur qui bloque et on ne peut pas écrire .

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Effectivement.

    Je ne peux pas tester. mais à ta place, je testerais (sans -H, donc)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xfce4-terminal -e nano -e bash
    Si ça marche pas, le script qui finit par la commande bash.

    Et si le script ne marche pas, "bash -c" comme tu l'as proposé avec pertinence.
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  11. #11
    Membre du Club
    Homme Profil pro
    chômeur
    Inscrit en
    Septembre 2015
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : chômeur

    Informations forums :
    Inscription : Septembre 2015
    Messages : 175
    Points : 62
    Points
    62
    Par défaut
    rien n'a fonctionné

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Ça, par contre, ce n'est pas possible.

    Comme "rien n'a fonctionné" n'est toujours pas un message d'erreur exploitable, poste ici les scripts, retours et erreurs de ta console.
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  13. #13
    Membre du Club
    Homme Profil pro
    chômeur
    Inscrit en
    Septembre 2015
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : chômeur

    Informations forums :
    Inscription : Septembre 2015
    Messages : 175
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Comme "rien n'a fonctionné" n'est toujours pas un message d'erreur exploitable, poste ici les scripts, retours et erreurs de ta console.
    Les commandes sont celles du sujet .
    Pas d'erreur le fichier s'execute mais l'objectif n'est pas atteint..

  14. #14
    Membre du Club
    Homme Profil pro
    chômeur
    Inscrit en
    Septembre 2015
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : chômeur

    Informations forums :
    Inscription : Septembre 2015
    Messages : 175
    Points : 62
    Points
    62
    Par défaut
    Meme resultat avec lxterminal .

    Comment garder le processus parent lorsque l'enfant est tué ?

  15. #15
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 035
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 035
    Points : 8 400
    Points
    8 400
    Par défaut
    Citation Envoyé par codezero1 Voir le message
    Meme resultat avec lxterminal .
    "ah non raté, essaye encore", comme le sentiment que ça peut durer longtemps cette partie de colin-maillard...

    Comment garder le processus parent lorsque l'enfant est tué ?
    c'est pas de ça qu'il s'agit, c'est un problème spécifique d'utilisation de xfce4-terminal et de ton shell

    bon déjà on reprend la manpage, on note l'option -x au lieu de l'option -e qu'on utilise depuis le début, est-ce que ça peut changer quelque chose ? permettre de chainer les commandes par exemple ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xfce4-terminal -x /usr/bin/nano; exec /bin/bash
    ou encore :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xfce4-terminal -x /bin/bash -c "/usr/bin/nano; exec /bin/bash"
    et si tout ça ne fonctionne pas, essayer le truc suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xfce4-terminal -e /home/TOTO/myscript.sh
    est-il besoin de préciser qu'il faut remplacer "TOTO" par le nom d'utilisateur et qu'on peut aussi mettre le fichier n'importe où ailleurs si ça nous chante ?

    et le fichier /home/TOTO/myscript.sh correspondant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #!/bin/bash
    /usr/bin/nano
    exec /bin/bash

  16. #16
    Membre du Club
    Homme Profil pro
    chômeur
    Inscrit en
    Septembre 2015
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : chômeur

    Informations forums :
    Inscription : Septembre 2015
    Messages : 175
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par BufferBob Voir le message
    Citation Envoyé par codezero1 Voir le message
    Meme resultat avec lxterminal .
    "ah non raté, essaye encore", comme le sentiment que ça peut durer longtemps cette partie de colin-maillard...
    Finalement non
    --

    Merci à tous !

    Ça fonctionne , aprés modification de la commande de BufferBob , car sur Ubuntu Xenial :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $ whereis -b nano
    nano: /bin/nano /usr/share/nano
    $
    Donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xfce4-terminal -x /bin/bash -c "/bin/nano; exec /bin/bash"
    --
    Citation Envoyé par BufferBob Voir le message
    bon déjà on reprend la manpage, on note l'option -x au lieu de l'option -e qu'on utilise depuis le début, est-ce que ça peut changer quelque chose ? permettre de chainer les commandes par exemple ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xfce4-terminal -x /usr/bin/nano; exec /bin/bash
    Effectivement .

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

Discussions similaires

  1. Processus paralleles
    Par Lyes dans le forum Threads & Processus
    Réponses: 4
    Dernier message: 11/02/2003, 13h04
  2. 1 variable pour 2 processus
    Par kacedda dans le forum POSIX
    Réponses: 2
    Dernier message: 11/02/2003, 06h32
  3. probleme avec les processus
    Par saidi dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 05/02/2003, 00h18
  4. [VB6] [Système] Tuer un processus courant
    Par mdoyer dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 22/10/2002, 14h47
  5. Réponses: 2
    Dernier message: 04/10/2002, 09h13

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