Linux终端杀手、程序员利器-Tmux
Send article as PDF SA、Coder、经常远程、还在开一堆终端?试试 Tmux 吧,一个窗口就搞定。
目录
- 0.0.0.1 Tmux ? Tmux 是一个终端复用器,类似
- 0.0.0.2 安装 Tmux
- 0.0.0.3 配置 Tmux 安装完 Tmux 默认没有配置文件,需手动生成。/etc/tmux.conf 全局文件,~/.tmux.conf 用户环境文件
- 0.0.0.4 使用 Tmux Tmux 完全依靠快捷键来使用它的功能,而刚才设置的Ctrl+g是这些功能的前提,例如打开一个时钟:Ctrl + g + t 按键的时候要先按Ctrl+g后松开Ctrl和g键后,快速按出t 打开 Tmux:
- 0.0.0.5 获取 Tmux 帮助 按 Ctrl + g + ? (问号等于:Shift + /)会出现 Tmux 的帮助信息, 信息中 ‘bind-key’ 说的就是 Ctrl + g, 或者直接 man tmux。
- 0.0.0.6 Tmux 常用功能 1. 分割终端窗口
- 1 tmux clear-history 清楚历史记录
Tmux ? Tmux 是一个终端复用器,类似
GNU Screen, 但来自 OpenBSD, 遵循 BSD 协议。在 Linux 系统下工作,我们往往需要开很多的终端,ssh、make、man、vim….多个终端之间按 Alt + 1..2… 来回切换,开得多了,难免会切换到其他地方。Tmux 完全可以解决这一麻烦,它像在 vim 中用 vsp sp 分割终端屏幕进行多个 vim 操作,当然这只是其中的一个功能而已。
安装 Tmux
# apt-get install tmux
其他系统直接安装 Tmux 的
tar 包,Tmux 依赖于 libevent 和 libevent-devel 包.
配置 Tmux 安装完 Tmux 默认没有配置文件,需手动生成。/etc/tmux.conf 全局文件,~/.tmux.conf 用户环境文件
# vim /etc/tmux.conf
set -g prefix ^g # Ctrl+g 激活控制台,(默认Ctrl+b)
unbind ^b # 解绑 Ctrl+b
set-option -g status-utf8 on # 开启状态栏的UTF-8支持
# cp mode
set-window-option -g mode-keys vi # 复制模式中的默认键盘布局使用 vi
bind h select-pane -L # h 等于向左移动光标
bind j select-pane -D # j 向下移动光标
bind k select-pane -U # k 向上移动光标
bind l select-pane -R # l 向右移动光标
tmux 默认使用的是Ctrl+b,之所以改成Ctrl+g是因为Ctrl+b在 Bash 环境里是向左移动光标. 现在 tmux 和 vim 操作一样了,复制时候也可以用 h、j、k、l 来移动光标。
使用 Tmux Tmux 完全依靠快捷键来使用它的功能,而刚才设置的Ctrl+g是这些功能的前提,例如打开一个时钟:Ctrl + g + t 按键的时候要先按Ctrl+g后松开Ctrl和g键后,快速按出t 打开 Tmux:
# tmux
按 Ctrl+g 后松开在按 t 会在终端里出现一个数字时钟
需要说的是 tmux 的功能无非就是 Ctrl + g + 一些功能的键而已,所有的按键方式和上面的时钟例子一样。
获取 Tmux 帮助 按 Ctrl + g + ? (问号等于:Shift + /)会出现 Tmux 的帮助信息, 信息中 ‘bind-key’ 说的就是 Ctrl + g, 或者直接 man tmux。
Tmux 常用功能 1. 分割终端窗口
Ctrl+g + " 在光标当前所在窗口,横向分割出一个窗口
Ctrl+g + % 在光标当前所在窗口,竖向分割出一个窗口
Ctrl+g + h ............ ,跳转光标到左边的窗口
Ctrl+g + j ............ ,跳转光标到下边的窗口
Ctrl+g + k ............ ,跳转光标到上边的窗口
Ctrl+g + j ............ ,跳转光标到右边的窗口
Ctrl+g + ! 关闭所有分割出来的窗口
Ctrl+g + x 关闭光标当前所在窗口。(或直接Ctrl+d)
Ctrl+g + { 向前置换当前面板
Ctrl+g + } 向后置换当前面板
Ctrl+g + q 查询面板编号
- 创建新的窗口:
一个终端里开了多个小窗口,还是不够用?
Ctrl+g + c 创建一个新的窗口
Ctrl+g + p 切换到上一个窗口
Ctrl+g + n 切换到下一个窗口
Ctrl+g + w 列出目前所创建的窗口,能看到窗口编号,在按编号直接切换窗口,见图2
Ctrl+g + 0-9 直接切换到指定编号的窗口
Ctrl+g + , 修改当前窗口名字,见图3
Ctrl+g + d 临时断开所有的会话,用命令# tmux attach 恢复会话
当你临时断开多个 tmux 会话时候,可以指定恢复某个会话:
# tmux ls #查看所有会话
0: 4 windows (created Tue Jan 22 00:42:16 2013) [177x48]
1: 1 windows (created Tue Jan 22 00:51:30 2013) [177x48]
恢复第一个会话:
# tmux a -t 0
图2: Ctrl+g + w
图3: Ctrl+g + ,
3. 查看窗口历史记录 在小窗口做一些操作时候,输出内容太多,如何回滚呢?
Ctrl+g + PgUP 向上回滚
Ctrl+g + PgDn 向下翻滚
- 在终端窗口里复制 在一个终端里分割了多个小窗口,你可能会在一个小窗口里复制一些代码或命令行到另外一个小窗口,这时你用小红点、鼠标、触摸板是无法胜任的。它把整个终端窗口当作是复制区域对象,而不隔离小窗口复制。
Ctrl+g [ 进入复制模式,移动光标到要复制文本区域后,按空格键开始选择要复制的内容,
利用h、j、k、l、$、0等(和vim中操作一样),按回车确认选中的内容。
Ctrl+g ] 粘贴
上面所介绍的是一些比较实用的功能,使用熟练在于 vim 的熟练应用. (控制键的快捷键按键组合方式:Ctrl+b前面也说过弊处,后来换成Ctrl+n发现在终端中不能向下翻命令,在改成Ctrl+m后,发现回车也用不了了。直接Ctrl+g算了。)
tmux clear-history 清楚历史记录
转自:http://longgeek.com/2013/01/22/linux-terminal-killer-programmers-tool-tmux/#Tmux_Tmux
1.tmux配置zsh为默认shell:
编辑tmux配置文件(~/.tmux.conf或/etc/tmux)
- set-option -g default-shell /bin/zsh
2配置鼠标滚动
Ctrl-B 进入复制模式
或者
- set -g mode-mouse on
或者:
- setw -g mode-keys vi
启用vim风格的按键配置
Linux终端杀手、程序员利器-Tmux的更多相关文章
- 程序员利器Tmux使用手册
转:https://blog.csdn.net/chenqiuge1984/article/details/80132042
- Mac OS X 程序员利器 – Homebrew安装与使用
Mac OS X 程序员利器 – Homebrew安装与使用 Homebrew安装与使用 什么是Homebrew? Homebrew is the easiest and most flexible ...
- linux实用指令 | 程序员线上排查必知必会linux指令(持续更新中)
Linux线上排查程序员实用指南 一.乱码问题 二.帮助指令 1. help命令 2. man命令 3. info命令 三.性能监测与优化 1. top命令 参考资源 Linux线上排查程序员实用指南 ...
- windows/Linux下的程序员文档浏览工具
Dash + Alfred https://www.jianshu.com/p/77d2bf8df81f 对于程序员来说,查看api文档是非常频繁,经常窗口之间切换非常麻烦,mac下就有一个查文档的神 ...
- linux常用Java程序员使用命令(二)
出品人:北极的大企鹅 1. pwd 显示当前路径 2. cd 切换目录 . .. ~ 例如: cd /root 3. ls 显示文件(夹) -l 显示详细信息 -a 显示全部,包括隐藏文件(夹)(这个 ...
- linux常用Java程序员使用命令(一)
pwd 显示当前路径cd 切换目录 . .. ~ls 显示文件(夹) -l 显示详细信息 -a 显示全部,包括隐藏文件(夹) mkdir 创建文件夹 -p 递归创建 touch 创建空白文件 echo ...
- 7. VIM 系列 - 程序员利器(语法检测、代码块补全、symbol管理、函数跳转)
目录 1. 语法检查利器 ale 2. 补全代码块 3. symbol 管理器 taglist.vim 4. 函数跳转 1. 语法检查利器 ale 安装 ale Plug 'w0rp/ale' 配置 ...
- Linux 下的分屏利器-tmux安装、原理及使用
>> 原文地址
- 每个程序员都可以「懂」一点 Linux
提到 Linux,作为程序员来说一定都不陌生.但如果说到「懂」Linux,可能就没有那么多人有把握了.到底用 Linux 离懂 Linux 有多远?如果决定学习 Linux,应该怎么开始?要学到什么程 ...
随机推荐
- UITableView 使用
关键字 •UITableView •UITableViewDataSource •UITableViewDelegate •UITableViewCell •MVC 运行结果
- Java基础知识系列——日期
日期类型也是在编程中经常用到的一种数据类型. Java中的日期类型为Date. 另外需要记住三个类: java.text.SimpleDateFormat; java.util.Calendar; j ...
- Android的setVisibility(View.GONE)无效的问题及原因分析
出现这种情况很可能是因为设置了animation,并且调用了setFillAfter(true),这就会导致setVisibility无效,只需要调用一下clearAnimation()方法或者去掉s ...
- win10使用小技巧以及常见问题处理方案
1.win10开机一直处于黑屏状态或者反复重启怎么处理? 处理小方法:开机按win+X组合件进入高级修复模式---选择修复开启模式---f4进入安全模式开机状态---管理控制面板---禁用或者卸载显卡 ...
- Brocade博科光纤交换机zone配置
1.规划 交换机 端口 用途 DS6520B-A 94 存储模块1-1 95 存储模块2-1 68 DB1网卡1-1 69 DB2网卡1-1 DS6520B-B 94 存储模块1-2 95 存储模块2 ...
- JDBC 工具类
在Java编程过程中 我们需要连接数据库 所以数据库的连接和增删改查操作是非常基本的操作同时又非常的重要.同时在JDBC编程中 ,有很多的方法如更新个查找操作,我们可以对其进行封装,提高我们编码的效率 ...
- OC中类别、扩展、协议与委托
一.类别(category) 类别(category)——通过使用类别,我们可以动态地为现有的类添加新方法,而且可以将类定义模块化地分不到多个相关文件中.通常只在类别中定义方法.(类别,接口部分的定义 ...
- PTGM and APTM
1. 性能测试过程模型(PTGM) PTGM模型包括以下几个步骤: 测试前期的准备 测试工具的引入 测试计划 测试设计与开发 测试执行与管理 测试分析 测试前期准备:主要任务为保证系统稳定和建立合适的 ...
- python 入门学习之环境搭载
1.常用python 2.7 需要在我的电脑环境变量进行环境搭载 2.用notepad++进行编辑器适配,选择python语言 在输入运行程序名里面输入cmd /k x: & cd " ...
- 《笨办法学C》笔记之Makefile
使用gcc编译C语言源码 在Linux系统中,C语言源码需要用gcc编译为二进制可执行文件,才能够运行. $ gcc test.c -o test 这句命令就将test.c文件编译为test二进制可执 ...