Ctrl-D ou exit
est identique.
Si vous utilisez le "X", le gestionnaire de fenêtres envoie un signal d'arrêt au shell. Ce qui a finalement le même résultat. Si le shell ne réagit pas, l'utilisateur reçoit généralement un avertissement et peut alors forcer la fin du shell (égal à kill -9 $PID
).
Il y a une petite différence entre le "X" - et la méthode exit si vous utilisez zsh
comme shell: si vous avez un processus d'arrière-plan en cours, exit
/ ctrl-D ne produit pour la première fois qu'un message d'avertissement "vous avez des travaux en cours", le deuxième fois que la coquille est fermée. Avec le bouton "X", le shell se termine immédiatement sans aucun avertissement.
&
continueront de fonctionner. Si vous "X", alors ils seront supprimés.Fermer l'émulateur de terminal ne revient pas à appuyer sur
CTRL + D
(sauf si l'optionhuponexit
est définie).Lorsque vous fermez le terminal (en cliquant sur "X"), l'émulateur de terminal envoie un SIGHUP au shell. Lorsque bash reçoit un SIGHUP, il envoie également un SIGHUP à tous vos travaux.
Lorsque vous quittez le terminal avec
CTRL+D
oulogout
ouexit
, le shell se ferme sans envoyer de SIGHUP à toutes les tâches. Il s'agit du comportement par défaut, mais il peut être modifié en définissant leshopt
paramètre bashhuponexit
.Donc, en fin de compte, si votre objectif est de vous assurer que rien ne fonctionne en arrière-plan, il est préférable de cliquer sur "X".
.
Les informations fournies par jofel dans son commentaire sont incorrectes (désolé jofel). L'émulateur de terminal n'a aucune idée des travaux exécutés sous le shell, il ne peut donc pas les terminer.
REMARQUE :
ce comportement dépend complètement du shell. Il est tout à fait possible que différents shells aient des comportements par défaut différents.
la source
Ctrl+d
processus est hérité par PPID 1 = systemdIl n'y a pas de différence. À tel point que lorsque vous appuyez sur ^ D, vous faites la même chose que de taper 'exit':
la source
CTRL+D
et ceexit
sont les mêmes, la question était de cliquer sur le "X" du gestionnaire de fenêtres pour fermer la fenêtre, pas de taperexit
:-)