一、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. angular 之路由

    1.用angular-cli建一个工程自带路由怎么做? 命令:ng new  项目名 --routing 2.怎么使用路由器和路由器的一些基本使用. //html页面 <a routerLink ...

  2. 雷林鹏分享:Ruby JSON

    Ruby JSON 本章节我们将为大家介绍如何使用 Ruby 语言来编码和解码 JSON 对象. 环境配置 在使用 Ruby 编码或解码 JSON 数据前,我们需要先安装 Ruby JSON 模块.在 ...

  3. CSS 列表样式详解

    CSS列表用于前端的列表排列. CSS列表属性作用如下: 设置不同的列表项标记为有序列表 设置不同的列表项标记为无序列表 设置列表项标记为图像 列表 在HTML中,有两种类型的列表: 无序列表 - 列 ...

  4. bzoj3172: [Tjoi2013]单词 ac自动机

    某人读论文,一篇论文是由许多单词组成.但他发现一个单词会在论文中出现很多次,现在想知道每个单词分别在论文中出现多少次. Input 第一个一个整数N,表示有多少个单词,接下来N行每行一个单词.每个单词 ...

  5. html中元素盒子垂直居中的实现方法

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  6. BOM之JavaScript常用事件

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

  7. Spartan6上软核系统自定义外设调用AXI Stream FFT经验

    这几天希望能在Spartan系列新品xc6slx16csg324-2运行带有FFT的软核处理系统,基本系统早就搭建好了.需要做的就是建立一个封装有Xilinx提供的FFT IP的自定义外设.由于Xil ...

  8. mysql数据添加时如果这条数据存在进行修改

    1.建表 CREATE TABLE vipMovie( id INT PRIMARY KEY AUTO_INCREMENT, md_name VARCHAR(255) NOT NULL UNIQUE, ...

  9. The record of Rf module debugging (1)

    In order to improve engineering English writing ability,start from today,record my daily work of  el ...

  10. C语言--第四次作业

    作业要求一 (70分) 实践最简答的项目wordcount,必须完成其中的基本功能,若可以完成其他功能给予加分.完成后请将你的设计思路.主要代码写在本次作业博客里. 真的迷茫<(_ _)> ...