![如何从 CLI 终止所有 tmux 会话(或至少多个会话)?](https://linux22.com/image/1144302/%E5%A6%82%E4%BD%95%E4%BB%8E%20CLI%20%E7%BB%88%E6%AD%A2%E6%89%80%E6%9C%89%20tmux%20%E4%BC%9A%E8%AF%9D%EF%BC%88%E6%88%96%E8%87%B3%E5%B0%91%E5%A4%9A%E4%B8%AA%E4%BC%9A%E8%AF%9D%EF%BC%89%EF%BC%9F.png)
如何从(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
,因此如果您没有很多会话需要删除,那么您可以写的更少。