最近一直需要同时操作多个远程机器,就简单学习了下tmux的使用。tmux(terminal multiplexer)是终端复用神器。对多个窗格同时使用特别好用,同步操作多台机器特别方便。

tmux安装

Ubuntu 或 Debian
apt-get install tmux
CentOS 或 Fedora
yum install tmux
Mac
brew install tmux

安装完成完成后输入 tmux 回车,就会进入tmux窗口

tmux的简单使用

主要介绍下窗格的使用

tmux有很多快捷键,默认的快捷键前缀是Ctrl+b,比如我们想看下tmxu的帮助,就同时按下Ctrl+b,然后松开,再按下shift+?就可以展示tmux的帮助菜单了。

主要看下窗格的介绍

Ctrl+b % 划分左右两个窗格。
Ctrl+b " 划分上下两个窗格。
Ctrl+b 上下左右箭头 多个窗格之间切换
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+ 按箭头方向调整窗格大小。
Ctrl+b q 显示窗格编号。
Ctrl+b :set synchronize-panes 多个窗格同步输入切换,设置一次同步输入,再设置一次关闭同步输入

使用以上若干命令进行远程操作两台机器。

绑定快捷键

比如上面的 同步输入命令太长了,就可以使用绑定快捷键实现简单的命令

vim ~/.tmux.conf
bind-key s setw synchronize-panes
source ~/.tmux.conf

让快捷键 Ctrl+b s快捷键来实现窗格同步输入的切换。试下 Ctrl+b s 代替了 Ctrl+b :set synchronize-panes 实现了同步输入。

可以根据习惯设置自己熟悉的快捷键方便使用。

tmux使用--同步多终端输入的更多相关文章

  1. 在Openstack H版部署Nova Cell 时 ,终端输入nova service-list 和 nova host-list 命令将报错

    关于Cell的基本介绍,可以参考贤哥的一篇文章: [OpenStack]G版中关于Nova的Cell  http://blog.csdn.net/lynn_kong/article/details/8 ...

  2. ubuntu安装anaconda后,终端输入conda,出现未找到命令

    解决办法: 终端输入:vim  ~/.bashrc 键盘大写“G”,在最末端输入:export PATH=~/anaconda2/bin:$PATH 使其生效:source  ~/.bashrc 打印 ...

  3. 在控制终端输入AT命令

    控制台终端输入AT命令到smd8,步骤如下: 1. 先执行命令 cat /dev/smd8 & 2. 再执行  echo  -e  "ati\r\n"  > /dev ...

  4. Ubuntu下安装Python3.6并在终端输入Python就能显示Python3.6

      Ubuntu17.04自带Python2.7与Python3.5.3的版本,由于Python2与Python3有着一些差距可能需要安装更新Python3的版本,并且切换默认的Python解释器. ...

  5. Mac系统升级后在终端输入git命令时遇到的问题

    Mac系统升级git会找不到并且报错:xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools) ...

  6. scala基础题--函数可以没有返回值案例,编写一个函数,从终端输入一个整数,打印出对应的金字塔

    函数可以没有返回值案例,编写一个函数,从终端输入一个整数,打印出对应的金字塔 import scala.io.StdIn object work02 { def main(args: Array[St ...

  7. 【BigData】Java基础_终端输入2个数字并求和

    1.需求描述 在终端输入2个数字,然后根据输入的数字求和 2.实现代码 package cn.test.logan; import java.util.Scanner; public class Te ...

  8. 003.当在windows终端输入ipconfig时,显示不是内部或外部命令,也不是可运行的程序或批处理文件

    当在windows终端输入ipconfig时,显示不是内部或外部命令,也不是可运行的程序或批处理文件,这是环境变量的问题: 右键我的电脑→→→属性→→→高级系统设置→→→(高级)环境变量 在弹出的窗口 ...

  9. Linux中让终端输入变为非阻塞的三种方法

    介绍 在linux下每打开一个终端,系统自动的就打开了三个文件,它们的文件描述符分别为0,1,2,功能分别是"标准输入"."标准输出"和"标准错误输出 ...

  10. uniapp-npm install 进入版本后 优先运行全局安装,在HBuilder X终端输入 npm install 点击回车

    uniapp-npm  install 进入版本后 优先运行全局安装,在HBuilder X终端输入 npm  install 点击回车

随机推荐

  1. Android 开机流程介绍

    目录 一.目的 二.环境 三.相关概念 3.1 Android平台架构 3.2 Android启动架构 3.3 zImage 3.4 RAMDISK 3.5 RC文件 四.详细设计 4.1 Boot ...

  2. 一文搞懂 Vue3 defineModel 双向绑定:告别繁琐代码!

    前言 随着vue3.4版本的发布,defineModel也正式转正了.它可以简化父子组件之间的双向绑定,是目前官方推荐的双向绑定实现方式. vue3.4以前如何实现双向绑定 大家应该都知道v-mode ...

  3. 案例:记录一则强制开库遭遇ORA-16433的处理过程

    客户的一套开发环境,大概了解到的背景是清理空间时redo被运维人员当作log误删除,一线同事先接手处理,过程中遇到问题升级到我这里继续分析. 接手后,数据库处于mount状态,之前恢复过程中已经做过r ...

  4. OGG_Linux_x64_BigData启动ggsci时报错:error while loading shared libraries: libjvm.so: cannot open shared object file: No such file or directory

    问题描述 [root@hadoop03 ggs]$ ./ggsci ./ggsci: error while loading shared libraries: libjvm.so: cannot o ...

  5. 【C#】基于JsonConvert解析Json数据

    1 解析字典 ​ 1)解析为 JObject private void ParseJson() { // 解析为JObject string jsonStr = "{'name': 'zha ...

  6. 【framework】ATMS启动流程

    1 前言 ​ ATMS 即 ActivityTaskManagerService,用于管理 Activity 及其容器(任务.堆栈.显示等).ATMS 在 Android 10 中才出现,由原来的 A ...

  7. Swoole从入门到入土(1)——入坑

    入坑一个话题,总得有入坑的理由.有好多话题可供选择,但是思来想去,对于PHPer进阶与其急着去掌握一门新的语言,匆忙地踏足一个新的知识体系,还不如先把php圈子的技能点攒齐了. 话说Swoole诞生之 ...

  8. Git将某个文件合并到指定分支

    企业开发中,经常会单独拉分支去做自己的需求开发,但是某些时候一些公共的配置我们需要从主线pull,这时候整个分支merge显然不合适 1.切换至待合并文件的分支 git checkout <br ...

  9. Java集合框架学习(十二) Arrays类详解

    声明:部分内容参考自:https://liuyanzhao.com/2863.html Arrays类介绍 这个类包含了用于操作数组的各种方法,诸如:排序和搜索. 这个类还包含一个静态方法asList ...

  10. Java并发编程实例--17.使用read/write锁同步数据访问

    锁机制带来的最有意义的改进是提供了ReadWriteLock接口及其实现类ReentrantReadWriteLock. 这个类有2个锁,一个针对读操作另一个针对写操作. 可以有多个线程使用读操作,但 ...