如何从 CLI 终止所有 tmux 会话(或至少多个会话)?

如何从 CLI 终止所有 tmux 会话(或至少多个会话)?

如何从(Ubuntu)CLI 终止所有 tmux 会话(或至少多个会话)?

当我这样做时,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

我怎样才能一次性杀死所有这些(或至少杀死其中一些,有选择性)?

答案1

您可以tmux kill-server使用干净利落终止所有 tmux 打开的会话(和服务器)。

如果您处于想要保留的 tmux 会话中,请使用tmux kill-session -a关闭所有其他会话。

要关闭特定会话,请使用tmux list-sessions来识别要终止的会话,然后使用tmux kill-session -t targetSession来终止该特定会话。

您还可以严重地使用 终止所有 tmux 进程pkill -f tmux

希望能帮助到你。

答案2

我可以使用以下命令终止所有这些进程:

pkill -f tmux

它会终止所有匹配名称(tmux)的进程(完整列表)。


新手注意:此方法可以帮你杀死所有匹配名称的其他进程。

答案3

这将列出并终止所有会话:

tmux list-sessions | awk 'BEGIN{FS=":"}{print $1}' | \
     ifne xargs -n 1 tmux kill-session -t

答案4

这里还有另一种解决方案,可以让您轻松地在有用的会话和要删除的会话之间进行选择,请输入tmux

按以下方式检查您的会话:

ctrl+b+s

然后使用箭头移动并按下t以瞄准您想要杀死的会话数量。

按下:并书写

kill-session

我认为这个解决方案更快,因为您不需要写入要删除的会话的名称或号码,而是使用自己的 tmux 的 UI 来同时删除所有选定的内容。

x在同一菜单中,您还可以按删除和接受删除逐个删除它们y,因此如果您没有很多会话需要删除,那么您可以写的更少。

相关内容