[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Lancer un script shell linux lors de la fermeture du terminal, avec la croix




On 02/20/2018 06:48 PM, Raphaël POITEVIN wrote:
> G2PC <g2pc@visionduweb.com> writes:
> 
>> Comment lancer un script shell linux lors de la fermeture du terminal,
>> avec la croix. ... ?
> 
> L’appeler dans .bash_logout ?
> 

Bonsoir,

L'approche est intéressante, mais ne marcherait pas dans le cas
concernant les terminaux quittés via la croix pour deux raisons.
La première est que la plupart des terminaux ne lancent pas par
défaut des shells de login, et la seconde est que, dans le cas
d'une utilisation dans un script de login, le .bash_logout n'est
appelé qu'a l'appel de la commande « exit ».

Ceci dit, c'était bien pensé.  :-)

La section « INVOCATION » du manuel de Bash est assez détaillée
à ce sujet :

       When an interactive login shell exits, or a non-interac‐
       tive login shell executes the exit builtin command, bash
       reads    and    executes    commands   from   the   file
       ~/.bash_logout, if it exists.


Il est toujours intéressant de noter que les terminaux des
divers environnements de bureau peuvent être configurés pour
être des shells de login via une option à cocher dans les
préférences.  Pour le terminal XTerm, vous pouvez le lancer avec
l'option -ls.

La morale de cette histoire est que, c'est mal de fermer ses
terminaux avec la croix : si un programme en cours d'exécution
avait eu besoin de faire du ménage, il y a de grandes chances
pour qu'il faille repasser derrière faire le ménage à la mimine.
Gérer ce cas proprement au sein des programmes n'est pas simple.

À plus,
-- 
Étienne Mollier <etienne.mollier@mailoo.org>


Reply to: