如何在分离tmux会话时停止进程

时间:2013-04-18 10:31:02

标签: tmux

我经常同时运行多个tmux会话,在大多数会话中,我将在端口上运行本地服务器。我想要的是能够在从tmux会话分离时自动终止此服务器,并在重新附加时重新启动服务器。

tmux中有什么东西可以让这更容易,感觉就像是有一个tmux提供的钩子,这样你就可以在会话被分离或重新连接之前运行一个脚本,但是我看不到任何东西在文档中这样。

3 个答案:

答案 0 :(得分:2)

快进到2017年。 今天,tmux有一个名为client-attachedclient-detached的钩子,它们分别在客户端附加到会话或从中分离时运行。

答案 1 :(得分:1)

tmux a  # attach most recent tmux session

tmux list-sessions  # look for the session you want to kill
tmux a -t 0         # attach session named "0"  

进入会话后,您想要杀死:

[Ctrl]-B x          # kill current pane of current session

为该会话中的所有窗格和窗口执行此操作,并且应该这样做。

答案 2 :(得分:0)

您可以在~/.tmux.conf

中添加类似的内容

shell-command /bin/bash yourhook.sh

这在运行tmux时至少会给你一些功能,但是我不确定你会对分离钩做什么......