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学习的更多相关文章

  1. 20135231 —— Linux 基础入门学习

    20135231 何佳 学习计时:共12小时 读书:5 代码:2 作业:2 博客:3 一.学习目标 1. 能够独立安装Linux操作系统 2. 能够熟练使用Linux系统的基本命令 3. 熟练使用Li ...

  2. Linux系统新手学习的11点建议

    随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起.这里介绍学习Linux的一些建议. 一.从基础开始:常常有些朋友在Linux论 ...

  3. Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)

    Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)

  4. Linux进程间通信IPC学习笔记之同步二(Posix 信号量)

    Linux进程间通信IPC学习笔记之同步二(Posix 信号量)

  5. Linux进程间通信IPC学习笔记之消息队列(SVR4)

    Linux进程间通信IPC学习笔记之消息队列(SVR4)

  6. Linux进程间通信IPC学习笔记之有名管道

    基础知识: 有名管道,FIFO先进先出,它是一个单向(半双工)的数据流,不同于管道的是:是最初的Unix IPC形式,可追溯到1973年的Unix第3版.使用其应注意两点: 1)有一个与路径名关联的名 ...

  7. Linux进程间通信IPC学习笔记之管道

    基础知识: 管道是最初的Unix IPC形式,可追溯到1973年的Unix第3版.使用其应注意两点: 1)没有名字: 2)用于共同祖先间的进程通信: 3)读写操作用read和write函数 #incl ...

  8. Linux防火墙iptables学习笔记(三)iptables命令详解和举例[转载]

     Linux防火墙iptables学习笔记(三)iptables命令详解和举例 2008-10-16 23:45:46 转载 网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能 ...

  9. linux的视频学习4(网络配置和rpm)

    linux的视频学习: 1.网络配置的三种方式的介绍. 第一种方式: setup 命令--选择network configuration-->配置固定ip(tab键)和自动分配IP(长空格) / ...

随机推荐

  1. margin:0 auto是什么意思

    一.margin设置对象外边距 二.margin后面如果只有两个参数的话,第一个表示top和bottom,第二个表示left和right 因为0 auto

  2. Android Service、IntentService,Service和组件间通信

    Service组件 Service 和Activity 一样同为Android 的四大组件之一,并且他们都有各自的生命周期,要想掌握Service 的用法,那就要了解Service 的生命周期有哪些方 ...

  3. Django 配置MySQL数据库

    在settings.py中配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 数据库引擎 'NAME': 'my ...

  4. Python GUI编程实例

    import os from time import sleep from tkinter import * from tkinter.messagebox import showinfo class ...

  5. chmod命令-权限

    ---··[转] hmod命令:改变文件权限.         一:符号模式:     命令格式:chmod [who] operator [permission] filename who包含的选项 ...

  6. Linux内核线程kernel thread详解--Linux进程的管理与调度(十)

    内核线程 为什么需要内核线程 Linux内核可以看作一个服务进程(管理软硬件资源,响应用户进程的种种合理以及不合理的请求). 内核需要多个执行流并行,为了防止可能的阻塞,支持多线程是必要的. 内核线程 ...

  7. c/c++ 数组和指针

    c/c++ 数组和指针 知识点 1,数组就是指针,对应代码里的test1 2,用auto声明,得到的是指针,对应代码里的test2 3,用decltype声明,得到的不是指针 ,对应代码里的test3 ...

  8. win8.1安装win64_11gR2_database_2of2 【INS-13001]】环境不满足最低要求问题

    1. 如图问题: 2. 修改 database\stage\cvu\cvu_prereq.xml, 添加windows 8.1 <OPERATING_SYSTEM RELEASE="6 ...

  9. 数据挖掘---Pandas的学习

    Pandas介绍(panel + data + analysis) 为什么使用Pandas        便捷的数据处理能力        读取文件方便        封装了Matplotlib.Nu ...

  10. Debian9安装vim和vim无法右键鼠标粘贴解决方法

    问题描述: Debian9有时候安装的时候没有vim,在centos用习惯了vim 1.Debian安装vim: root@kvm1:/etc/network# apt-get install vim ...