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快捷键

<下面转载自http://my.oschina.net/cshell/blog/135261>

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. 终端复用工具-tmux

    目录 终端复用工具--Tmux 一.为什么要用Tmux? 二.tmux是什么? 三.Tmux基本概念 四.Tmux使用规则 1.安装Tmux 2.基本使用 3.自定义配置文件 五.补充 1.tmux ...

  2. Linux终端复用工具 tmux

    简介 Terminal Multiplexer (From WIKIPEDIA) - A terminal multiplexer is a software application that can ...

  3. 终端复用工具 tmux 基本操作教程

    简介 在 Linux 操作环境下,终端操作是发挥 Linux 强大命令功能的重要途径,但在本地主机操作中,针对不同任务开启不同的终端,在使用时进行频繁的终端切换在某些场合下是一种使人分心和疲惫的操作, ...

  4. Linux终端复用工具tmux的使用和配置

    1. 会话管理 新建会话 $ tmux new -s session-one -d -s:指定回话名称 -d:会话在后台运行 查看所有会话 $ tmux ls session-one: 1 windo ...

  5. (转载)Linux终端复用神器-Tmux使用

    Linux终端复用神器-Tmux使用 转载地址:https://blog.51cto.com/652465/2094738 Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于Open ...

  6. Linux终端复用神器-Tmux使用梳理

    Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权.使用它最直观的好处就是,通过一个终端登录远程主机并运行tmux后,在其中可以开启多个控制台而无需再“ ...

  7. 终端复用软件 tmux

    Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权. Tmux 所使用的快捷键前缀默认是组合键 Ctrl-b(同时按下 Ctrl 键和 b 键). 技巧 ...

  8. Linux/UNIX 下终端复用利器 tmux

    简介 tmux 是一个终端复用器类自由软件,功能类似 GNU Screen,但使用 BSD 许可发布.用户可以通过 tmux 在一个终端内管理多个分离的会话,窗口及面板,对于同时使用多个命令行,或多个 ...

  9. tmux终端复用/tmate终端共享

    目录 tmux tmate tmux 一种终端复用工具,是终端中的窗口管理器.常见的一种用途是在关闭父shell时保持程序运行(常用于ssh访问断开连接后保持运行).linux上可通过包管理器进行安装 ...

随机推荐

  1. Leetcode:signal_number_ii

    一.     题目 给一个数组,当中仅仅有一个数出现一次.其它的数都出现3次,请找出这个数.要求时间复杂度是O(n).空间复杂度O(1). 二.     分析 第一次遇见这种题,真心没思路-.前面的s ...

  2. spring jdbcTemplate使用queryForList示例

    查询代码: LogVo 日志要显示的内容(Log的部分或者全部列) Log是日志完整的实体 public List<LogVO> findLogByDate(String startDat ...

  3. go 语言学习笔记 0001 --> iota

    go语言中预置了一个预定义常量 iota 这个东西有个很奇怪的特性,会根据 const 关键字改变值 默认的,iota在const出现的时候会初始化为0,而后不断递加1,直到出现第二个const关键字 ...

  4. CISP/CISA 每日一题 18

    CISSP 每日一题(答)What is the purpose of an access review and audit? Checkto ensure that users do not hav ...

  5. Objc执行时读取和写入plist文件遇到的问题

    以下是本猫保持游戏NPC和物件交互的plist文件: 随着游戏和玩家逐步发生互动,玩家会改动人物和物件的交互的状态.这也是RPG游戏最主要的功能. 在切换每一个地图时须要将上一个地图发生的改变存储到p ...

  6. VPS的centOS6安装远程桌面

    VPS的centOS6安装远程桌面 64位系统的需要编译安装 ttp://www.landui.com/help/Show-991.html xrdp是在图形界面下使用的,首先要确定您的centos系 ...

  7. Emgucv 图像操作笔记

    这里记下一些学习过程中的心得和技巧.我用VS2008,C#的平台进行编写. 1.将图片载入PictureBox的方法: Image<Bgr, byte> img = new Image&l ...

  8. 【CS Round #46 (Div. 1.5) C】Set Subtraction

    [链接]h在这里写链接 [题意] 一开始有n个数字,然后有一个数字X,把每个数字都减去X,又生成N个新的数字. 然后把这2*N个数字混在一起. 告诉你这2*N个数字是什么.让你复原出原来的N个数字,以 ...

  9. amazeui学习笔记--css(基本样式3)--文字排版Typography

    amazeui学习笔记--css(基本样式3)--文字排版Typography 一.总结 1.字体:amaze默认非 衬线字体(sans-serif) 2.引用块blockquote和定义列表:引用块 ...

  10. 详解javascript的深拷贝与浅拷贝

    1. 认识深拷贝和浅拷贝 javascript中一般有按值传递和按引用传递两种复制,按值传递的是基本数据类型(Number,String,Boolean,Null,Undefined),一般存放于内存 ...