Linux之tmux学习
Linux之tmux学习
前言
在Linux的世界中,命令行是最优雅的交互方式。
但是,只会使用一个交互终端的程序员,是不足以成为Linux下的大牛的。
那么tmux是什么,引用一下原文介绍
tmux is a "terminal multiplexer", it enables a number of terminals (or windows)
to be accessed and controlled from a single terminal. tmux is intended to be a
simple, modern, BSD-licensed alternative to programs such as GNU screen.
tmux可以让你在一个终端中同时交互多个命令,而不用多开终端和不断切换窗口,同屏显示的效率也更高一些。
正文
tmux的原生触发键是Ctrl + b,但是由于它的bash原生的后退字符快捷键冲突了,所以我修改了一下键位配置。
触发键:修改为Ctrl + v,该快捷键仅和vim中的block-visual模式冲突,但该模式使用频率低,而且冲突后可以再次触发进入block-visual,所以不用太介意
左右分屏:修改为|,形象生动,竖线表达左右分屏,避免记忆原生%才是左右分屏的快捷键
上下分屏:修改为-,形象生动,横线表达上下分屏,避免记忆原生"才是上下分屏的快捷键
面板切换:修改为hjkl,配合vim的操作方式,避免移动手掌和误操作性,分别对应上下左右
窗口切换:修改为序号1为第一窗口(默认0),切换第一个窗口的时候不用在找0的位置,切换方式为触发键后加窗口的序号Ctrl + v,<index>,序号默认显示在终端的最下方
窗口自动重排列:退出2号窗口后,3号窗口会自动序号变为2号,4号及后面的同理
调整面板大小:按住触发键Ctrl + v,不断按hjkl即可调整面板的大小
显示效果:

附录
.tmux.conf文件内容,放置在~/.tmux.conf路径下,建议重定向tmux命令为tmux -2才能启动256色彩方案
# =====> TMUX general <=====
# reload settings message
bind R source-file ~/.tmux.conf \; display-message "Config reloaded..."
# remap prefix from 'C-b' to 'C-v'
unbind C-b
set-option -g prefix C-v
bind-key C-v send-prefix
# =====> TMUX display <=====
# use 256 colors
set -g default-terminal "screen-256color"
# use vi mode
setw -g mode-keys vi
# start window indexing at one instead of zero
set -g base-index 1
# auto reorder windows number
set-option -g renumber-windows on
# =====> TMUX key bindings <=====
# split window to two horizontal panes
bind | split-window -h
# split window to two vertical panes
bind - split-window -v
# resize-pane with hjkl
bind -r C-h resize-pane -L
bind -r C-j resize-pane -D
bind -r C-k resize-pane -U
bind -r C-l resize-pane -R
# select-pane with hjkl
bind -r h select-pane -L
bind -r j select-pane -D
bind -r k select-pane -U
bind -r l select-pane -R
Linux之tmux学习的更多相关文章
- 20135231 —— Linux 基础入门学习
20135231 何佳 学习计时:共12小时 读书:5 代码:2 作业:2 博客:3 一.学习目标 1. 能够独立安装Linux操作系统 2. 能够熟练使用Linux系统的基本命令 3. 熟练使用Li ...
- Linux系统新手学习的11点建议
随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起.这里介绍学习Linux的一些建议. 一.从基础开始:常常有些朋友在Linux论 ...
- Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)
Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)
- Linux进程间通信IPC学习笔记之同步二(Posix 信号量)
Linux进程间通信IPC学习笔记之同步二(Posix 信号量)
- Linux进程间通信IPC学习笔记之消息队列(SVR4)
Linux进程间通信IPC学习笔记之消息队列(SVR4)
- Linux进程间通信IPC学习笔记之有名管道
基础知识: 有名管道,FIFO先进先出,它是一个单向(半双工)的数据流,不同于管道的是:是最初的Unix IPC形式,可追溯到1973年的Unix第3版.使用其应注意两点: 1)有一个与路径名关联的名 ...
- Linux进程间通信IPC学习笔记之管道
基础知识: 管道是最初的Unix IPC形式,可追溯到1973年的Unix第3版.使用其应注意两点: 1)没有名字: 2)用于共同祖先间的进程通信: 3)读写操作用read和write函数 #incl ...
- Linux防火墙iptables学习笔记(三)iptables命令详解和举例[转载]
Linux防火墙iptables学习笔记(三)iptables命令详解和举例 2008-10-16 23:45:46 转载 网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能 ...
- linux的视频学习4(网络配置和rpm)
linux的视频学习: 1.网络配置的三种方式的介绍. 第一种方式: setup 命令--选择network configuration-->配置固定ip(tab键)和自动分配IP(长空格) / ...
随机推荐
- margin:0 auto是什么意思
一.margin设置对象外边距 二.margin后面如果只有两个参数的话,第一个表示top和bottom,第二个表示left和right 因为0 auto
- Android Service、IntentService,Service和组件间通信
Service组件 Service 和Activity 一样同为Android 的四大组件之一,并且他们都有各自的生命周期,要想掌握Service 的用法,那就要了解Service 的生命周期有哪些方 ...
- Django 配置MySQL数据库
在settings.py中配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 数据库引擎 'NAME': 'my ...
- Python GUI编程实例
import os from time import sleep from tkinter import * from tkinter.messagebox import showinfo class ...
- chmod命令-权限
---··[转] hmod命令:改变文件权限. 一:符号模式: 命令格式:chmod [who] operator [permission] filename who包含的选项 ...
- Linux内核线程kernel thread详解--Linux进程的管理与调度(十)
内核线程 为什么需要内核线程 Linux内核可以看作一个服务进程(管理软硬件资源,响应用户进程的种种合理以及不合理的请求). 内核需要多个执行流并行,为了防止可能的阻塞,支持多线程是必要的. 内核线程 ...
- c/c++ 数组和指针
c/c++ 数组和指针 知识点 1,数组就是指针,对应代码里的test1 2,用auto声明,得到的是指针,对应代码里的test2 3,用decltype声明,得到的不是指针 ,对应代码里的test3 ...
- win8.1安装win64_11gR2_database_2of2 【INS-13001]】环境不满足最低要求问题
1. 如图问题: 2. 修改 database\stage\cvu\cvu_prereq.xml, 添加windows 8.1 <OPERATING_SYSTEM RELEASE="6 ...
- 数据挖掘---Pandas的学习
Pandas介绍(panel + data + analysis) 为什么使用Pandas 便捷的数据处理能力 读取文件方便 封装了Matplotlib.Nu ...
- Debian9安装vim和vim无法右键鼠标粘贴解决方法
问题描述: Debian9有时候安装的时候没有vim,在centos用习惯了vim 1.Debian安装vim: root@kvm1:/etc/network# apt-get install vim ...