一、tmux是干什么的?

百度百科的解释很到位:tmux是指通过一个终端登录远程主机并运行后,在其中可以开启多个控制台的终端复用软件。

说白了就是复用软件,复用的什么软件呢? 你可以理解成复用shell。

另一个作用就是,比如说你通过ssh连接到远程的服务器,正在scp一个很大的文件,但是传了一般,电脑掉电了,这是后怎么办?你只能重新传输,但是tmux就不需要,你可

以通过tmux找到刚才的会话继续执行。

下图1是tmux以后复用shell以后的效果:

图1 tmux运行效果图

左下角:tmux会话名称

下方中间:当前会话中的tmux窗口,一共有4个,当前用的第4个,并且我在第4个窗口又分屏了3个窗口

右下角:当前日期

二、如何安装tmux

tmux是支持MAC和linux系统的,因为我没用过MAC所以本文只涉及Linux相关

在linux中可以直接使用下面命令安装:

$ sudo yum install tmux -y

三、tmux详细介绍

1. tmux配置文件

      每当开启一个新的会话时,Tmux 都会先读取 ~/.tmux.conf 这个文件。该文件中存放的就是对 Tmux 的配置。

我使用的详细配置如下(为了你们方便粘贴我就不截图了):

set -g utf8 on
          # make tmux display things in 256 colors
          set -g default-terminal "screen-256color"
          unbind C-b
          set -g prefix C-b  #设置tmux命令前缀
          # start selecting text typing 'v' key (once you are in copy mode)
          bind-key -t vi-copy v begin-selection
          # copy selected text to the system's clipboard
          #bind-key -t vi-copy y copy-pipe "reattach-to-user-namespace pbcopy"
          setw -g mode-keys vi
          #set-option -g default-command "reattach-to-user-namespace -l bash"
          #bind a reload key
          bind R source-file ~/.tmux.conf ; display-message "Config reloaded.."
          # set scrollback history to 10000 (10k)
          set -g history-limit 10000
          set -g base-index 1
          set -g status-fg white
          set -g status-bg black
          set-option -g status-justify centre
          # 左下角
          set-option -g status-left '#[bg=black,fg=green][#[fg=cyan]#S#[fg=green]]'
          set-option -g status-left-length 20
          #窗口列表
          setw -g automatic-rename on
          set-window-option -g window-status-format '#[dim]#I:#[default]#W#[fg=grey,dim]'
          set-window-option -g window-status-current-format '#[fg=cyan,bold]#I#[fg=blue]:#[fg=cyan]#W#[fg=dim]'
          #右下角
           set -g status-right '#[fg=green][#[fg=cyan]%Y-%m-%d#[fg=green]]'

      2. 如何启动tmux?
         $ tmux 回车就启动,看到屏幕上出现图1中的效果
  
      3. tmux快捷键介绍
          这一步的前提是你启动了tmux,另外就是在tmux命令必须有一个前缀,默认是ctrl+b,当前如果你觉得不方便可以在配置文件中更改。
          ctrl + b 以前按然后松手 按 s,会显示所有的会话。
          c  创建一个新的窗口,你会发现图一中下面中部列表中多了一个。
          n  显示下一个窗口
          p  显示上一个窗口
          w  列出所有窗口,可以通过方向键控制,回车进入相应的窗口
          % 竖列开一个窗口
          "   水平开一个窗口
          ctrl + d 退出当前窗口, 这个不需要加命令前缀
          下面的命令是查看历史输出:
          前缀命令后 + PageUp 或者 [
           
          此时屏幕右上角会显示[33/144],表示一共有144行输出,目前光标在第33行
          进入这个模式可以使用v选择,y复制,h、j、k、l进行移动光标。(当然这是在配置文件中加入了配合才有的)
          最后用q退出。
 
          最后一个是创建一个新会话:
          在终端输入 tmux -s new <session-name>
          
          差不多就这些了,用起来很方便,比如说一个将屏幕作用用来vim编辑脚本,右边窗口调用脚本看输出结果,这样就不用来回切换了,很省事。
 
          更多详情参考:http://blog.jobbole.com/87584/
          
      

运维基础工具tmux介绍及使用的更多相关文章

  1. 第一阶段·Linux运维基础-第1章·Linux基础及入门介绍

    01-课程介绍-学习流程 02-服务器硬件-详解 03-服务器核心硬件-服务器型号-电源-CPU 01-课程介绍-学习流程 1.1. 光看不练,等于白干: 1.2 不看光练,思想怠慢: 1.3 即看又 ...

  2. 第一阶段·Linux运维基础-第2章·Linux系统目录结构介绍

    01 变量与PS1 02 添加用户 03 关闭SELinux 04 关闭iptables 05 显示中文乱码排查过程 06 总结 07 目录结构课程内容 08 Linux目录结构特点 09 Linux ...

  3. HBase运维基础--元数据逆向修复原理

    背景 鉴于上次一篇文章——“云HBase小组成功抢救某公司自建HBase集群,挽救30+T数据”的读者反馈,对HBase的逆向工程比较感兴趣,并咨询如何使用相应工具进行运维等等.总的来说,就是想更深层 ...

  4. Ansible运维自动化工具19个常用模块使用实例【转】

    一.模块列表 1.setup 2.ping 3.file 4.copy 5.command 6.shell 7.script 8.cron 9.yum 10.service 11.group 12.u ...

  5. 阿里云运维部署工具AppDeploy详细教程

    AppDeploy是一个通过SSH实现的命令行工具,可完成应用部署和远程运维管理.当前工具实现为两个版本:普通版(伪代码描述语言)和Python版.Python版使用Python语法规则,可实现您的各 ...

  6. Linux系统运维基础测试题

    1    Linux运维基础测试题(第一关) 通过这段时间学习Linux基础命令,为了检测自己对Linux基础命令掌握的情况,从网上整理13到测试题,并将其整理出来供大家参考学习. 1.1    习题 ...

  7. Linux运维基础采集项

    1. Linux运维基础采集项 做运维,不怕出问题,怕的是出了问题,抓不到现场,两眼摸黑.所以,依靠强大的监控系统,收集尽可能多的指标,意义重大.但哪些指标才是有意义的呢,本着从实践中来的思想,各位工 ...

  8. 盘点Linux运维常用工具(一)-web篇之httpd

    #前言:想把自己学的各种服务进行分类归档起来,于是就写了盘点Linux运维常用工具,Linux方面使用到的web应用服务有httpd(apache).nginx.tomcat.lighttpd,先了解 ...

  9. Linux运维基础

    一.服务器硬件 二.Linux的发展史 三.Linux的系统安装和配置 四.Xshell的安装和优化 五.远程连接排错 六.Linux命令初识 七.Linux系统初识与优化 八.Linux目录结构 九 ...

随机推荐

  1. Android之提示Toast

    步骤: 设置监听事件步骤1.事件源,如按键 btn_simple2.事件 OnClick3.监听器new OnClickListener3.绑定事件源与事件 setOnClickListener(ne ...

  2. Java开源-astar:A 星算法

    astar A星算法Java实现 一.适用场景 在一张地图中,绘制从起点移动到终点的最优路径,地图中会有障碍物,必须绕开障碍物. 二.算法思路 1. 回溯法得到路径 (如果有路径)采用“结点与结点的父 ...

  3. UVA-1660 Cable TV Network (最小割)

    题目大意:给一张n个点.m条边的无向图,求最小点割集的基数. 题目分析:求无向图最小点割集的基数可以变成求最小割.考虑单源s单汇t的无向图,如果要求一个最小点集,使得去掉这个点集后图不再连通(连通分量 ...

  4. SpringMvc测试框架详解----服务端测试

    随着RESTful Web Service的流行,测试对外的Service是否满足期望也变的必要的.从Spring 3.2开始Spring了Spring Web测试框架,如果版本低于3.2,请使用sp ...

  5. 006——php字符串中的处理函数(五)

    <?php /** * 一.addslashes() 在预定义字符串前添加反斜杠 * * stripslashes() 把转义字符串前的反斜杠删除 * get_magic_quotes_gpc( ...

  6. java- Collection Set集合

    首先HashSet类创建集合对象和遍历对象 package set; import java.util.HashSet; import java.util.Iterator; //hashset储存字 ...

  7. mysql单列索引和联合索引的使用

    1,首先要确定优化的目标,在什么样的业务场景下,表的大小等等.如果表比较小的话,可能都不需要加索引. 2,哪些字段可以建索引,一般都where.order by 或者 group by 后面的字段. ...

  8. SqlServer一些常用函数(持续更新。。。)

    1. 字符串拼接: + 拼接 SELECT 'AA' + 'BB' A //AABB在2012版本sqlserver之后,可以使用cancat进行字符串拼接了. 2. 判断是否为空,并取另外的值 :I ...

  9. Cannot find name 'AsyncIterator' error in Typescript compilation process 问题解决

    解决方法: tsconfig.json: 添加lib 编译选项 { "compilerOptions": { "lib":[ "esnext.asyn ...

  10. Python编程核心内容 ---- 切片、迭代和列表生成式

    Python版本:3.6.2  操作系统:Windows  作者:SmallWZQ 最近太忙啦.很多事情需要自己处理,感觉时间不够用啊~~~~今后,博客更新时间可能会慢下来(但不能荒废了学习,要学习就 ...