前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >终端复用工具tmux的使用

终端复用工具tmux的使用

作者头像
用户8705057
修改2021-06-08 10:59:08
9060
修改2021-06-08 10:59:08
举报
文章被收录于专栏:linux百科小宇宙

tmux的作用在于终端复用。

1. 在server上启动一个bash,并在里面运行tmux

2. 通过ssh远程登录server,运行tmux attach,就会切换到server上的那个bash中,接下来的操作都是在bash中了

3. 此时可以打开更多的窗口,这样在远程就可以像在本地一样同时使用多个一样的bash

如果要发送命令,如下:

tmux send -t checkpoint ls ENTER

注:checkpoint是你已经用tmux创建好的session的名字(tmux new -s checkpoint);ls是shell命令;加上ENTER才能在checkpoint这个session中执行ls命令。

这样你就不用手动tmux attach到那个session中,再手动执行ls命令。这对使用脚本是有好处的。

如果这个session有多个窗口:

tmux send -t checkpoint:0 ‘mongoose -t 2’ ENTER

0代表第一个窗口。

结合parallel-ssh就可以远程使用服务器的bash环境来运行命令。

这样的场景是有用的。在一台server上用criu来对一个小程序进行checkpoint,需要criu和小程序都运行在bash中,而不是直接在ssh中,否则checkpoint得到的img文件就会包含与ssh终端相关联的信息(session id),这样就不能在另一台server上进行restore了,也就是实现不了migration。而如果都在bash中,就不会再有与ssh有关的信息了,在另一台机器上就可以restore。

tmux快捷键

tmux在会话中使用大量的快捷键来控制多个窗口、多个会话等。

Ctrl+b  #激活控制台;此时以下按键生效 

系统操作 

    ?  #列出所有快捷键;按q返回 

    d  #脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话 

    D  #选择要脱离的会话;在同时开启了多个会话时使用 

    Ctrl+z  #挂起当前会话 

    r  #强制重绘未脱离的会话 

    s  #选择并切换会话;在同时开启了多个会话时使用 

    :  #进入命令行模式;此时可以输入支持的命令,例如kill-server可以关闭服务器 

    [  #进入复制模式;此时的操作与vi/emacs相同,按q/Esc退出 

    ~  #列出提示信息缓存;其中包含了之前tmux返回的各种提示信息 

窗口操作 

    c  #创建新窗口 

    &  #关闭当前窗口 

    数字键 #切换至指定窗口 

    p  #切换至上一窗口 

    n  #切换至下一窗口 

    l  #在前后两个窗口间互相切换 

    w  #通过窗口列表切换窗口 

    ,  #重命名当前窗口;这样便于识别 

    .  #修改当前窗口编号;相当于窗口重新排序 

    f  #在所有窗口中查找指定文本 

面板操作 

    ”  #将当前面板平分为上下两块 

    %  #将当前面板平分为左右两块 

    x  #关闭当前面板 

    !  #将当前面板置于新窗口;即新建一个窗口,其中仅包含当前面板 

    Ctrl+方向键    #以1个单元格为单位移动边缘以调整当前面板大小 

    Alt+方向键 #以5个单元格为单位移动边缘以调整当前面板大小 

    Space  #在预置的面板布局中循环切换;依次包括even-horizontal、even-vertical、main-horizontal、main-vertical、tiled 

    q  #显示面板编号 

    o  #在当前窗口中选择下一面板 

    方向键 #移动光标以选择面板 

    {  #向前置换当前面板 

    }  #向后置换当前面板 

    Alt+o  #逆时针旋转当前窗口的面板 

    Ctrl+o  #顺时针旋转当前窗口的面板 

tmux 1.8 发布,Linux 终端复用器 http://www.linuxidc.com/Linux/2013-03/81980.htm

Tmux:终端复用器 http://www.linuxidc.com/Linux/2013-07/86776.htm

tmux使用简单教程 http://www.linuxidc.com/Linux/2014-10/107644.htm

CentOS下Tmux安装和使用 http://www.linuxidc.com/Linux/2014-11/109375.htm

用 Tmux 和 Vim 打造 IDE  http://www.linuxidc.com/Linux/2015-06/119165.htm

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档