整个解决方案由三个tmux插件组成。
需要注意的是,使用这两个 Tmux 插件要求 Tmux 是 1.9 及以上版本,如果不符合要求,赶紧升级吧, 可以参考:tmux安装最新版本
- tpm:tmux plugin manager。这个是用来管理tmux插件的。有了它之后,就可以很轻松地安装和写在tmux插件。
- tmux-resurrect:这个是主角,提供了保存tmux会话到磁盘,以及从磁盘上加载保存的会话的功能。但是只能在需要的时候手动操作。
- tmux-continuum:提供了定时保存,自动加载,以及开机设置自动启动tmux的功能。需要tmux-resurrect来完成具体的工作。
安装及配置
安装很简单,只需要
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
然后,在~/.tmux.conf中配置:
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @continuum-save-interval '15'
set -g @continuum-restore 'on'
set -g @resurrect-capture-pane-contents 'on'
run -b '~/.tmux/plugins/tpm/tpm'
然后需要在shell中运行
tmux source ~/.tmux.conf
使用
安装插件
然后就可以在Tmux中使用快捷prefix + I(注意这里的I是大写)安装配置文件.tmux.conf中定义的插件了。
保存和恢复
保存
- prefix + Ctrl-s
要保存 Tmux 会话,我们只要按 前缀键 + Ctrl-s 就可以了。此时,Tmux 状态栏会显示“Saving …”字样,完毕后会提示 Tmux 环境已保存。
Tmux Resurrect 会将 Tmux 会话的详细信息以文本文件形式保存到 ~/.tmux/resurrect 目录。
恢复
- prefix + Ctrl-r
平常重启电脑后,首先在终端打开Tmux,然后使用prefix + Ctrl-r就可以恢复保存的Session了,如果有多个Session可以使用prefix + s来选择Session。