2012-04-24 96 views
2

我希望能够在tmux中加载保存在包括窗口/窗格和shell设置的文件中的会话。我有这个在〜/ .tmux/my_session:从文件加载tmux会话

new -d -s test1 
neww -k -t test1:1 top 

new -d -s test2 
neww -k -t test2:1 -n '2w1' 
neww -t test2 -n '2w2' 

现在我采购它TMUX和这工作得很好:我有两个分离的会议test1的(一个窗口)和TEST2用2个窗口。但我想实际运行一些命令,例如与替换最后一行:

neww -t test2 -n '2w2' 'cd ~/work; ./myscript.zsh ; ls' 

因此,它的CDS的目录,运行一些设置纸条,确实ls住宿开放供进一步使用。然而根据手册,命令完成后窗口会自动关闭。有一个选项remain-on-exit,但现在还不清楚,我怎么能与neww,这样它的实际工作结合起来吧...

而且手动列表neww一个-c标志设置起始目录,但我homebrew安装tmux v1.6没有按似乎没有认出它。

teamocil似乎能够做到这一点,所以它必须是可能的(但teamocil不会保持会议分开,这是我必不可少的)。

谢谢!

回答

2

答案是发送密钥:

new -d -s test1 
neww -k -t test1:1 -n '1w1' 
send-keys -t test1:1 "echo '1w1'" C-m 

new -d -s test2 
neww -k -t test2:1 -n '2w1' 
neww -t test2 -n '2w2' 
send-keys -t test2:1 "echo '2w1'" C-m 
send-keys -t test2:2 "echo '2w2'" C-m 

display-message "Sessions loaded!" 
+1

请详细解释一下 – 2013-07-10 10:12:19

1

我敢肯定tmuxinator可以让事情分开。

+0

所以可以使用teamocil,它有一个很棒的'.yml'配置格式 – 2017-07-10 19:47:34