美文网首页开发工具分享
终端复用神器Tmux使用教程

终端复用神器Tmux使用教程

作者: MachinePlay | 来源:发表于2020-04-02 04:31 被阅读0次

1.什么是Tmux

Tmux

Tmux是一个终端复用软件 Termial mutiplexer,用来分离terminal和session。
我们经常遇到这样的场景,我们开启了一个Terminal A,对应Session A,在A中启动了一系列非守护进程,由于这些进程是A的子进程,当我们关闭Terminal A,也就是Session A,大部分进程将会同样被关闭,也就是关闭窗口的同时,窗口打开的进程也被关闭了。

我们可以借助Tmux将Session和Terminal分开来解决这个问题。
Tmux允许在一个窗口中开启多个Session,自由地在Session之间切换,并且退出窗口不会关闭这些Session。

2.使用tmux

2.1安装Tmux

Centos

yum install tmux

macOS:

brew install tmux

2.2 启动、进入、分离与退出Session

启动tmux

//开启一个编号自动递增的session
tmux 
//开启一个名为my_name的session
tmux new -s my_name

两个命令的区别是第一个命令默认生成从0开始的数字编号session
第二个在创建session时指定名称,方便回到指定session


编号

可以通过命令

tmux ls

来查看系统中后台运行的session名,根据session名来进入指定session


查看

分离session

例如我们创建了一个名为back 的session后就可以在里面操作,执行了一个nohup后台任务 ,操作完成后我们想退出这个session但是不关闭它,就可以用分离(detach)来将窗口分离,可以使用Ctrl + b + d或者

tmux detach

离开back而不影响back,我们稍后还可以回到这个session,继续之前的任务

回到session

刚刚我们离开了session back
我们使用Terminal处理完其它事情之后,可以回到刚刚的session,还记得我们之前的命令吗tmux ls 查看一下运行在后台的session

tmux ls
可以看到我们的back session还在健康茁壮的运行着
使用
tmux attach -t  name

来回到名为name的session

又回到了原来的back工作场景

退出Session

tmux detach只会让当前session后台运行,如果我们确实需要退出某个session
可以直接exit或者

tmux kill-session -t name

重命名Session

之前使用了默认数字编号或者session起名想换一个,可以使用

tmux rename-session -t formername newname

来修改session名称

2.3Tmux窗口扩展和切换

前面我们都是每个session内只用一个窗口(pane),我们可以在一个session内使用多个窗口来并行查看多个任务

多窗口

垂直划分

划分为上下窗口
tmux split-window

水平划分

划分为左右窗口
tmux split-window -h

在窗口间移动光标

tmux select-pane

上下移动
tmux select-pane -U
tmux select-pane -D
左右移动
tmux select-pane -L
tmux select-pane -R

交换窗格位置。

tmux swap-pane命令用来

# 当前窗格上移
$tmux swap-pane -U

# 当前窗格下移
tmux swap-pane -D

3.常用操作

3.1经典场景

    1. ssh或mosh(墙裂推荐)登录远程主机
    1. tmux新建或者attach到原来的工作session
    1. 工作
    1. 完成工作后detach下班
    1. 第二天早上回来重复1即可还原昨天的工作场景,延续workflow

3.2经典快捷键

Ctrl+b %:划分左右两个窗格。
Ctrl+b ":划分上下两个窗格。
Ctrl+b <arrow key>:光标切换到其他窗格。<arrow key>是指向要切换到的窗格的方向键,比如切换到下方窗格,就按方向键↓。
Ctrl+b ;:光标切换到上一个窗格。
Ctrl+b o:光标切换到下一个窗格。
Ctrl+b {:当前窗格左移。
Ctrl+b }:当前窗格右移。
Ctrl+b Ctrl+o:当前窗格上移。
Ctrl+b Alt+o:当前窗格下移。
Ctrl+b x:关闭当前窗格。
Ctrl+b !:将当前窗格拆分为一个独立窗口。
Ctrl+b z:当前窗格全屏显示,再使用一次会变回原来大小。
Ctrl+b Ctrl+<arrow key>:按箭头方向调整窗格大小。
Ctrl+b q:显示窗格编号。

4.其它

下面是一些其他命令。

# 列出所有快捷键,及其对应的 Tmux 命令
$ tmux list-keys

# 列出所有 Tmux 命令及其参数
$ tmux list-commands

# 列出当前所有 Tmux 会话的信息
$ tmux info

# 重新加载当前的 Tmux 配置
$ tmux source-file ~/.tmux.conf

相关文章

  • 终端复用神器Tmux使用教程

    1.什么是Tmux Tmux是一个终端复用软件 Termial mutiplexer,用来分离terminal和s...

  • tmux安装与使用

    tmux 一、tmux是什么 tmux(terminal multiplexer)是Linux上的终端复用神器,可...

  • tmux 是什么,特别好用

    tmux 英文是terminal multiplexer 1 tmux是什么 答:它是linux下终端复用神器。即...

  • 终端-tmux终端复用神器

    tmux是什么 tmux(terminal multiplexer)是Linux上的终端复用神器,可从一个屏幕上管...

  • 【Linux操作】---终端神器tmux

    tmux是什么 tmux(terminal multiplexer)是Linux上的终端复用神器,可从一个屏幕上管...

  • Linux终端复用神器-Tmux使用

    Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权。使用它最直观的...

  • Tmux 使用笔记

    Tmux 速成教程:技巧和调整Tmux 入门介绍多终端管理器TMUX使用详解 查看tmux版本 tmux -V 会...

  • tmux 开机启动

    tmux是个非常好用的终端复用器,之前写过tmux入门教程,有兴趣的可以看这里https://www.jiansh...

  • Tmux: Terminal Multiplexer

    Tmux: Terminal Multiplexer tmux 是什么 tmux 是一个终端复用器(termina...

  • tmux学习笔记

    概述 Tmux 是一个优秀的终端复用器类自由软件,但使用 BSD 许可发布。用户可以通过 tmux 在一个终端内管...

网友评论

    本文标题:终端复用神器Tmux使用教程

    本文链接:https://www.haomeiwen.com/subject/dsktphtx.html