神器 tmux 介绍
时间:2022-07-23
本文章向大家介绍神器 tmux 介绍,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
今天给大家介绍一个 Linux 终端复用软件:Tmux(读音为:踢骂克斯) 。
演示环境:max os
Tmux 的简介与安装
Tmux 是可以在一个终端窗口运行多个终端会话的软件。简单来说,就是一个窗口,可以当作多个窗口来用,各个窗口之间可以灵活的切换、关闭、新建等。
这里以 mac 电脑为例,安装命令如下:
# 安装 Homebrew
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
# 安装 Tmux
brew install tmux
安装完成后,输入 tmux 即可进入 tmux 操作环境。
Tmux 常用命令
在了解 tmux ,我们需要了解三个概念:会话、窗口与面板。简单解释就是:我们打开一个终端,就叫创建一个会话,同时会在会话中打开一个窗口。经常我们都是一个窗口,然后在里面输入 Linux 命令进行操作,如果此时需要连多台服务器,或者做多个不同目录下的操作,我们就需要开多个窗口,而 tmux 就是解决这一痛点,它可以让我们在一个窗口下开多个面板,进行不同的操作。也就是说一个会话可以打开多个个窗口,一个窗口可以有多个面板。
了解基本概念之后,介绍项目开发中常用到的几个 tmux 命令,基本上项目中用到的就这几个命令,其他的大家可以自己在需要的时候再去查找。
# 创建会话
tmux
# 这个命令会创建一个tmux 会话,同时会话名称从数字 0 开始命名
# 创建指定名称的会话
tmux new-session -s 会话名称
# 退出当前会话
先按下 ctrl + b ,然后按 d
# 需要注意的是,在 tmux 会中进行操作,都需要先按下 ctrl + b ,再按其他指令
# 打开指定会话
tmux a -t 面板名称
# 切换会话
ctrl + b, s
# 列出当前所有会话
tmux ls
# 新建窗口
ctrl + b , c
# 窗口是按数据 0 开始创建
# 窗口切换
ctrl + b , 指定窗口名称,即窗口下方的数据
# 新建面板
ctrl + b , % # 左右方向创建
ctrl + b , " # 上下方向创建
# 关闭当前面板
ctrl + b , x
# 当只有一个面板时,会关闭当前窗口
# 当窗口没有其他窗口时,会退出当前会话
# 当会话中只有一个窗口时,会删除整个会话
# 清屏
ctrl + l
# 翻屏
ctrl + b , ] , 然后上下键可滚动
基本上项目中掌握上述命令就已经足够用了。
用一个视频展示下这些基本操作
https://v.qq.com/x/page/c13503ppvou.html?start=5
- iOS block探究(一): 基础详解你要知道的block都在这里
- 在不动用sp_configure的情况下,如何 =》去掉列的自增长,并保留原数据
- iOS runtime探究(一): 从runtime开始理解面向对象的类到面向过程的结构体你要知道的runtime都在这里
- iOS runtime探究(二): 从runtime开始深入理解OC消息转发机制你要知道的runtime都在这里
- SpringMVC 启动流程及相关源码分析你要知道的SpringMVC启动流程和源码分析都在这里
- iOS runtime探究(四): 从runtiem开始实践Category添加属性与黑魔法method swizzling你要知道的runtime都在这里
- C# 复制PDF页面到另一个PDF文档
- Java8 Lambda表达式与Stream API (一):Lambda表达式你要知道的Java8 匿名内部类、函数式接口、lambda表达式与Stream API都在这里
- iOS runtime探究(五): 从runtime开始深入weak实现机理你要知道的runtime都在这里
- Java8 Lambda表达式与Stream API (二): Stream API的使用你要知道的Java8 匿名内部类、函数式接口、lambda表达式与Stream API都在这里
- Python Garbage Collection 与 Objective-C ARCPython GC 与 Objective-C ARC
- SpringMVC DispatcherServlet执行流程及源码分析你要知道的SpringMVC DispatcherServlet执行流程及源码分析都在这里
- iOS runtime探究(三): 从runtime开始理解OC的属性property你要知道的runtime都在这里
- jQuery选择器大全(48个代码片段+21幅图演示)1
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法