Používám terminál Gnome a tmux a rád bych, aby byly všechny relace tmux uzavřeny, když zavřu terminál Gnome, je to možné? Zkontroloval jsem článek Arch Wiki na tmux a našel nějaký relevantní kód, ale žádný z nich neudělal to, co jsem chtěl. Právě teď, když zavřu a otevřu terminál Gnome, dostanu relaci, kterou jsem měl, přesně tak, jak to bylo těsně předtím, než jsem zavřel terminál se všemi panely a spuštěnými programy. Chci, aby všechny relace byly ukončeny, když zavřu terminál Gnome.
Přijatá odpověď:
Možnost 1:použijte .bash_logout
Ve vašem .bash_logout
můžete přidat tmux kill-server
. Toto nebude fungovat, pokud nejste v přihlašovacím shellu nebo pokud je shell zabit pomocí SIGHUP.
Možnost 2:Použijte pasti bash.
Tato možnost je pravděpodobně robustnější. Vložte následující kód do svého .bash_profile
(za předpokladu, že používáte bash).
function close_tmux
{
tmux kill-server
}
trap close_tmux EXIT
Odkazy na další zdroje na pasti
Nějaké pozadí na trap
prohlášení
Blogový příspěvek se spoustou trap
příklady
Kapitola o pastech z průvodce skriptováním Bash
Unix &Linux Stack si vyměňují otázku ohledně pastí