【DevOps】Tmux 与 Tmuxp

Tmux


Tmux 简介

Tmux 是一个终端复用神器;

举个例子,当我们打开一个终端窗口,会话开始,然后通过命令启动程序,如果不通过后台的方式运行程序,关掉终端后程序就会关闭;

因为 终端窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。

而 Tmux 解绑了会话和终端窗口。关闭终端窗口再打开,会话并不终止,程序也可以保持运行;

功能

1、单个窗口可以访问多个会话

2、在已存在的会话中 还可以开启新窗口

3、每个会话可以连接多个窗口

4、支持窗口任意拆分(水平 或 垂直)

使用

1、安装

sudo apt-get install tmux

2、会话相关

# 创建会话
tmux new -s <session-name>

# 进入会话
tmux a -t <session-name>

# 退出会话
ctrl+b  d

# 列出会话
tmux ls

# 重命名会话
tmux rename-session -t old-name <new-name>

3、窗口相关

# 水平切分窗口
Ctrl+b %

# 垂直切分窗口
Ctrl+b "

# 当前窗口全屏或退出全屏
Ctrl+b z

# 关闭当前窗口(窗口的程序也会终止)
Ctrl+b x

保存与恢复 Tmux 会话

https://www.linuxidc.com/Linux/2015-07/120304.htm
https://zhuanlan.zhihu.com/p/146544540

1、安装 tmux-resurrect

mkdir ~/.tmux
cd ~/.tmux
git clone https://github.com/tmux-plugins/tmux-resurrect.git

vim ~/.tmux.conf
run-shell ~/.tmux/tmux-resurrect/resurrect.tmux

tmux source-file ~/.tmux.conf

2、保存所有会话

在某个会话中

ctrl+b  ctrl+s

3、恢复所有会话
在某个会话中

ctrl+b  ctrl+r

Tmuxp


介绍

当我们使用 Tmux 创建了很多的会话时,万一机器故障重启,很容易忘记都需要启动哪些会话,此时就需要 一款工具来管理并记录 Tmux 的会话,这个工具就是 Tmuxp;

管理会话的方式是通过 yaml 文件,一个 yaml 文件对应一个会话,在yaml 文件里又可以配置多个窗口,对应一个会话的多个窗口,这点和 k8s 配置服务的方式很像;

通过配置文件管理与记录会话的方式,方便存储业务所需的会话,方便复现业务的启动,方便移植后在新的环境启动,某些方面和K8S的优点比较像;

安装
pip install tmuxp
配置会话

1、 配置

session_name: 4-pane-split
windows:
- window_name: dev window
  layout: tiled
  shell_command_before:
    - cd ~/                    # run as a first command in all panes
  panes:
    - shell_command:           # pane no. 1
        - cd /var/log          # run multiple commands in this pane
        - ls -al | grep \.log
    - echo second pane         # pane no. 2
    - echo third pane          # pane no. 3
    - echo forth pane          # pane no. 4

2、 启动

 tmuxp load ./mysession.yaml
 tmuxp load path/to/my/project/
 tmuxp load mysession ./another/project/
参考:https://github.com/tmux-python/tmuxp
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值