Terminal 从文件加载tmux会话
我希望能够在tmux中加载保存在文件中的会话,包括窗口/窗格和shell设置。我在~/.tmux/my_会话中有这个:Terminal 从文件加载tmux会话,terminal,tmux,Terminal,Tmux,我希望能够在tmux中加载保存在文件中的会话,包括窗口/窗格和shell设置。我在~/.tmux/my_会话中有这个: 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(带有两个窗口)。但我想实际运行一些命令,例如,将最后一行替换为
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(带有两个窗口)。但我想实际运行一些命令,例如,将最后一行替换为:
neww -t test2 -n '2w2' 'cd ~/work; ./myscript.zsh ; ls'
这样它就可以CD到目录中,运行一些设置脚本,并保持打开状态以供进一步使用。但是,根据手册,在命令完成后,窗口将自动关闭。有一个选项保持在退出状态
,但不清楚如何将其与neww
结合使用,使其实际工作
另外,neww
的手动列表a-c标志用于设置起始目录,但myhomebrew
installedtmux v1.6
似乎无法识别它
teamocil
似乎能够做到这一点,因此它必须是可能的(但是teamocil
没有将会话分开,这对我来说很重要)
谢谢大家! 答案是发送键:
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!"
我很确定tmuxinator可以将事情分开。请详细解释一下,因为它可以使用teamocil,而且它有一个很棒的
.yml
配置格式