Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 18/09/2017, à 07:36

Crestey

[Résolu] Fermer la console depuis une ligne d'un script

Bonjour à tous,
Pour fermer la console, il suffit de taper exit puis enter.
Mais si je lance un script qui contient la commande exit, depuis la console, cette commande exit du script ne ferme pas la console. C'est sans doute normal.
Existe-t-il un moyen de fermer la console depuis le script qui vient d'être lancé par cette console ?
A vous lire

Dernière modification par Crestey (Le 18/09/2017, à 10:47)


Merci à tous.
Sous Ubuntu/XFCE depuis 2013. Ça fonctionne vraiment très bien.

Hors ligne

#2 Le 18/09/2017, à 08:22

pingouinux

Re : [Résolu] Fermer la console depuis une ligne d'un script

Bonjour,
Il suffit de lancer le script dans le shell courant :

. le_script

ou

source le_script

Hors ligne

#3 Le 18/09/2017, à 09:26

Crestey

Re : [Résolu] Fermer la console depuis une ligne d'un script

Bonjour pingouinux et merci de répondre.
Je pense que j'ai mal posé la question.
Je donne un exemple : je veux un script qui attend 3 secondes et ferme la console. Je l'appelle "test":

sleep 3
exit

Quand je lance ". test", ça attend bien 3 secondes, mais ça ne ferme pas la console.
La commande exit ferme bien la console si je la tape dans la console, mais pas si la rentre à la fin d'un script comme dans l'exemple "test". D'où ma question résumée par le titre.
A te lire

Dernière modification par Crestey (Le 18/09/2017, à 09:27)


Merci à tous.
Sous Ubuntu/XFCE depuis 2013. Ça fonctionne vraiment très bien.

Hors ligne

#4 Le 18/09/2017, à 09:35

pingouinux

Re : [Résolu] Fermer la console depuis une ligne d'un script

C'est bien ce que j'avais compris. test est le nom d'une "builtin command", essaye d'en choisir un autre, ou bien lance la commande ainsi :

. ./test

Hors ligne

#5 Le 18/09/2017, à 09:52

kholo

Re : [Résolu] Fermer la console depuis une ligne d'un script

salut
pour fermer proprement la fenêtre en cours

wmctrl -c :ACTIVE:

mais il faut que ton terminal ai le focus
et que wmctrl soit installé

Dernière modification par kholo (Le 18/09/2017, à 09:53)

Hors ligne

#6 Le 18/09/2017, à 10:10

Crestey

Re : [Résolu] Fermer la console depuis une ligne d'un script

Merci à vous. Les 2 marchent bien en effet.
Je vais passer pour un chieur, mais en fait les 2 propositions contournent un peu le problème.
La question est en fait de trouver une commande qui ferme le processus "parent". Un peu comme exposé là : "https://forum.ubuntu-fr.org/viewtopic.php?id=153173"


Merci à tous.
Sous Ubuntu/XFCE depuis 2013. Ça fonctionne vraiment très bien.

Hors ligne

#7 Le 18/09/2017, à 10:25

pingouinux

Re : [Résolu] Fermer la console depuis une ligne d'un script

La question est en fait de trouver une commande qui ferme le processus "parent".

Peut-être un peu brutal…

$ cat test
sleep 3
kill -9 $PPID

À lancer ainsi :

./test

Hors ligne

#8 Le 18/09/2017, à 10:46

Crestey

Re : [Résolu] Fermer la console depuis une ligne d'un script

Je ne suis pas assez compétent pour dire si c'est brutal, mais je le suis assez pour dire que c'est efficace ! smile
Ça marche bien, merci beaucoup ! (Et pardon de ne pas avoir été assez clair dès le départ dans l'énoncé de ma question.)

Dernière modification par Crestey (Le 18/09/2017, à 10:48)


Merci à tous.
Sous Ubuntu/XFCE depuis 2013. Ça fonctionne vraiment très bien.

Hors ligne

#9 Le 18/09/2017, à 13:38

serged

Re : [Résolu] Fermer la console depuis une ligne d'un script

Sinon, plus rapide que de taper exit puis Enter, on peut aussi faire au clavier "Ctrl-D". Moins à taper....


LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)

Hors ligne