Je me demandais s'il était possible de redémarrer en quelque sorte gnome-terminal
de lui-même? Ce que je veux dire par là, est-ce qu'il y a une commande que je peux utiliser pour dire à gnome-terminal
pour fermer puis se relancer immédiatement? J'ai essayé de courir:
exit && gnome-terminal
Mais cela ne fonctionne pas car après sa sortie, il ne peut pas se lancer lui-même, donc je me demandais s'il y avait une autre commande qui le fermerait mais aussi demander à un autre programme de l'ouvrir immédiatement à nouveau?
Informations sur le système d'exploitation:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 15.10
Release: 15.10
Codename: wily
Flavour: GNOME
GNOME Version: 3.18
Informations sur le package:
gnome-terminal:
Installed: 3.18.2-1ubuntu2~wily1
Candidate: 3.18.2-1ubuntu2~wily1
Version table:
*** 3.18.2-1ubuntu2~wily1 0
500 http://ppa.launchpad.net/gnome3-team/gnome3-staging/ubuntu/ wily/main AMD64 Packages
100 /var/lib/dpkg/status
3.16.2-1ubuntu4 0
500 http://archive.ubuntu.com/ubuntu/ wily/main AMD64 Packages
Vous devez "détacher" la fenêtre de terminal nouvellement créée. Maintenant, quelle commande cela fait-il? Nohup
ou setsid
Nohup gnome-terminal && exit
setsid gnome-terminal && exit
trap
le pseudo-signal EXIT
:
trap 'gnome-terminal' EXIT
Maintenant, chaque fois que vous exécutez exit
une nouvelle instance de gnome-terminal
sera ouvert par Shell et la session existante de Shell sera terminée.
Comme l'a souligné @Byte Commander, si vous faites exit
(comme vous le faisiez) ou appuyez sur Ctrl + D pour quitter le Shell, ce qui précède créerait un gnome-terminal
fenêtre avec le même PID que le précédent (bien que le Shell obtienne un PID différent), ce comportement est voulu par la conception même du produit. Donc, pour tuer le courant gnome-terminal
traiter et démarrer un nouveau, vous pouvez faire:
trap 'kill $(ps -o ppid= $$) && gnome-terminal' EXIT