tmux学习笔记

概述

Tmux 是一个优秀的终端复用器类自由软件,但使用 BSD 许可发布。用户可以通过 tmux 在一个终端内管理多个分离的会话,窗口及面板,对于同时使用多个命令行,或多个任务时非常方便。

基本操作

会话

  1. 新建会话

    1
    2
    3
    4
    # 新建会话,会话名默认生成
    tmux
    # 新建会话,并声明会话名
    tmux new -s session_name
  2. 正在运行会话列表查阅

    1
    tmux ls
  3. 打开一个正在运行会话

    1
    tmux a -t session_name
  4. 退出当前会话
    快捷键:control+b,d

  5. 删除会话
    1
    2
    3
    4
    # 删除一个正在运行的会话
    tmux kill-session -t session_name
    # 删除当前会话名以外的其余会话(不指定会话名,默认保留第一条会话)
    tmux kill-session -a -t session_name

分屏

  1. 横向分屏
    快捷键:control+b,%
  2. 纵向分屏
    快捷键:control+b,”

杂项

  1. 移动光标
    快捷键:control+b,方向键
  2. 显示系统时间
    快捷键:control+b,t
  3. 关闭窗口
    在当前会话下,将光标移动到待关闭窗口,然后敲命令exit即可关闭窗口。

应用场景

代码调试

在Linux或者Mac终端水平或者垂直切割屏幕,将切割区域分为代码部分、编译部分、调试效果展示部分、日志记录部分等,当我们需要debug时:在代码部分敲入代码,然后在代码编译部分编译代码,最后在展示部分(可终端展示程序)查看效果,如果有问题呢,在日志部分也可以实时检查。可谓码农的编程利器啊!

系统监控

我们可以建立多个会话,分别监控我们需要关注的系统性能、报警等信息,比如cpu使用情况、网络使用情况、内存是否正常、磁盘是否够用等等,然后在每个会话里,我们还可以通过屏幕切割达到对于每项监控更加细致的分类,一目了然,掌控全局!

记忆标签

本地

很多使用Mac的同学都一个不成文的习惯,电脑长时间不关机,并且同时开启很多终端,原因有很多,比如担心重启电脑以后丢失之前进行到一半的任务,或则只是因为懒……当然,mac本身设计的很好,就算长期不重启也毫无压力。这个时候,其实我们需要一个记忆标签工具,来管理我们打开的数量庞大的终端们。不管开启多少个终端,只要我们简单的取个名字作为标记,下次再找的时候会快捷很多!

服务器

对于服务器来说,重启的机会更加微乎其微,这个时候,我们就更需要一个终端记忆标签工具来管理我们的远程会话了,当我们ssh连接服务器时,遇到突发事件,比如被叫去开会,或者下班了,没关系!在开完会或者第二天上班以后,我们还可以进入当时那个会话,继续之前没有完成的工作。