Как уничтожить все tmux сессии (или по крайней мере несколько сессий) от CLI?

Как уничтожить все tmux сессии (или по крайней мере несколько сессий) от (Ubuntu) CLI?

Когда я делаю ps aux | grep tmux Я вижу 3 процесса:

UU      2970  0.0  0.0  19556  1228 pts/0    S+   02:48   0:00 tmux
UU      3445  0.0  0.0  12944   988 pts/5    S+   03:31   0:00 grep --color=auto tmux
UU     27557  0.0  0.2  29788  4840 ?        Ss   Jan04   0:02 tmux

Как я мог уничтожить все их сразу (или по крайней мере некоторые из них, селективности)?

97
задан 5 January 2017 в 10:12

4 ответа

Я могу уничтожить все эти процессы с командой:

pkill -f tmux

Это уничтожает все процессы (полный список) имени соответствия (tmux).

<час>

Примечание для вновь прибывших: Этот путь мог служить Вам для уничтожения всего процесса других имен соответствия.

13
ответ дан 22 November 2019 в 23:04

Можно использовать tmux kill-server для чисто, и корректно уничтожают все tmux открытые заседания (и сервер).

, Если бы Вы в tmux сессии, требуется сохранить, использовать tmux kill-session -a для закрывания всех других сеансов.

Для закрывания определенного сеанса используйте tmux list-sessions для идентификации сессии, которую Вы хотите уничтожить, и затем использовать tmux kill-session -t targetSession для уничтожения той определенной сессии.

Также Вы можете чрезвычайно , уничтожают все процессы tmux с pkill -f tmux.

Hope это помогает.

173
ответ дан 22 November 2019 в 23:04

Это перечислило бы и уничтожило бы все сессии:

tmux list-sessions | awk 'BEGIN{FS=":"}{print $1}' | xargs -n 1 tmux kill-session -t
17
ответ дан 22 November 2019 в 23:04

Учитывая:

# tmux ls
session-0a: 1 windows (created Sat Dec  5 02:31:35 2020) [117x30]
session-84: 1 windows (created Sat Dec  5 01:55:18 2020) [190x47] (attached)
session-b3: 1 windows (created Sat Dec  5 03:23:44 2020) [94x13]
session-b2: 1 windows (created Sat Dec  5 02:45:00 2020) [104x14]
session-ae: 1 windows (created Sat Dec  5 01:55:18 2020) [190x47] (attached)

Это убьет все сеансы, не подключенные кем-либо:

tmux list-sessions | grep -v attached | awk 'BEGIN{FS=":"}{print $1}' | xargs -n 1 tmux kill-session -t || echo No sessions to kill

Ссылки:

  1. https://stackoverflow.com/questions/10411616/grep-regex-not -содержащая-строка
  2. https://unix.stackexchange.com/questions/33049/how-to-check-if-a-pipe-is-empty-and-run-a-command-on-the-data -if-it-isnt
  3. Как убить все сеансы tmux (или хотя бы несколько сеансов) из CLI?
4
ответ дан 5 December 2020 в 18:17

Другие вопросы по тегам:

Похожие вопросы: