Zauważyłem, że mam uruchomiony proces i myślę, że dzieje się tak, ponieważ zainicjowałem proces w byobu, który używa tmux.
ps aux | grep sidekiq
1000 13786 0.0 0.0 8108 900 pts/4 S+ 11:27 0:00 grep sidekiq
Mam sesję tmux o nazwie „3”. Jak widać poniżej:
$ byobu
Byobu sessions...
1. tmux: 3: 1 windows (created Wed Aug 28 10:57:54 2013) [229x84] (attached)
2. tmux: daemon: 1 windows (created Thu Jul 11 12:59:09 2013) [127x83]
3. tmux: juggernaut: 1 windows (created Thu Jul 11 12:54:08 2013) [80x23]
Chciałbym zakończyć tę sesję i zakończyć wszystkie uruchomione procesy utworzone przez tę sesję.
Odpowiedzi:
procesy w terminalach wirtualnych powinny otrzymać SIGHUP.
źródło
To mnie również niepokoiło, więc napisałem do tego wtyczkę tmux. Nie jest idealny, ale można go łatwo rozszerzyć, aby wiedzieć, jak bezpiecznie zabijać większość procesów przed wyjściem z tmux: tmux-safekill
źródło
Może nie jest to najbardziej eleganckie rozwiązanie, ale robi to, o co prosiłeś:
Jeśli uruchomisz to z poziomu sesji tmux, zabije on wszystkie procesy, które się pojawił, a następnie możesz zakończyć pracę z tmux
exit
.źródło
(zrzeczenie się: jestem początkujący) Ten skrypt kończy wszystkie okna / okna
some_session
i wychodzi:źródło