linux tmux 详细教程,Linux下的神器介绍之Tmux分屏器
前言
我們?yōu)槭裁葱枰制疗髂?#xff1f;
對(duì)于這個(gè)問題,我想大家肯定都有自己的看法。
主流的觀點(diǎn)是這樣的,對(duì)于生活在Linux下的人(開發(fā)人員、運(yùn)維人員、普通愛好者)都不可避免的使用終端模擬器(比如,gnome-terminal)去執(zhí)行一些命令或者腳本。但是,通常一個(gè)終端是不夠用的。
比如,你想一邊觀察著系統(tǒng)的運(yùn)行狀態(tài)一邊用vim寫個(gè)腳本,當(dāng)你運(yùn)行了個(gè)top命令后,你發(fā)現(xiàn)這個(gè)終端被占用了,你不能夠再用這個(gè)終端去干其他的事了,所以,一些偉大的工程師就開發(fā)了個(gè)tmux神器去幫你解決這個(gè)問題。
注:tmux的特性遠(yuǎn)不止于終端復(fù)用,它的功能很強(qiáng)大,比如它可以保存會(huì)話session,下次直接恢復(fù)會(huì)話就可以了工作了,是不是很愜意。注意,運(yùn)行tmux的服務(wù)器關(guān)閉之后,session會(huì)丟失。不過有解決辦法,tmuxinator就是來解決這個(gè)問題的,之后我會(huì)繼續(xù)講解的。
說了這么多tmux的強(qiáng)大,不親眼見識(shí)下也不知道啊,讓我們把它安裝到自己的系統(tǒng)吧!
tmux安裝
注:本人的系統(tǒng)是ArchLinux+lxde
archlinux下的安裝:$ pacman -S tmux
ubuntu下的按照:apt-get install tmux
tmux的基本概念
我們先來理解下tmux的幾個(gè)元素。tmux的主要元素分為三層:
Session 一組窗口的集合,通常用來概括同一個(gè)任務(wù)。session可以有自己的名字便于任務(wù)之間的切換。
Window 單個(gè)可見窗口。Windows有自己的編號(hào)(默認(rèn)是從0開始編號(hào)的)。
Pane 窗格,被劃分成小塊的窗口,類似于Vim中 C-w +v 后的效果。
為了更好的理解,下面是三個(gè)元素在tmux中的具體展現(xiàn)。
tmux-concept
可以看到Session總在tmux的左下角顯示,通常會(huì)為他命名。例如我正在寫博客,開了很多窗口那么我就會(huì)把這組窗口命名為blog方便之后的重連和切換。而Window也會(huì)在最下方以一種Tab的形式展現(xiàn)。每個(gè)window都有自己的需要,也會(huì)以當(dāng)前活動(dòng)進(jìn)程的名字命名。而Pane就比較好理解,即把單個(gè)窗口分割成若干個(gè)小塊后的元素。
配置tmux
我們可以先進(jìn)行一些簡單的配置,修改 ~/.tmux.conf 即可,讓整個(gè)使用更方便。
#解除Ctrl+b 與前綴的對(duì)應(yīng)關(guān)系
unbind C-b
#設(shè)置前綴為Ctrl + a
set -g prefix C-a
#將r設(shè)置為加載配置文件
bind r source-file ~/.tmux.conf
#copy-mode 將快捷鍵設(shè)置為vi 模式
setw -g mode-keys vi
tmux默認(rèn)的前置操作是CTRL+b,在此,我們改成CTRL+a,也可以不該,主要看個(gè)人習(xí)慣,我認(rèn)為CTRL+a按起來比較方便。
tmux的操作基本上都是Prefix-Command模式,即先按前置鍵,再進(jìn)行實(shí)際命令操作。
例如,我們想要新建一個(gè)窗體(前提是已經(jīng)創(chuàng)建了session),就需要先在鍵盤上摁下CTRL+a,松開后再摁下c鍵。
tmux的基本操作
session操作
創(chuàng)建session
$ tmux new-session -s mysession1
然后輸入CTRL-a d從此會(huì)話脫離,想要重新連接此會(huì)話,需輸入:
$ tmux attach-session -tmysession1
一些管理sessions的命令:
$ tmux list-session
$ tmux new-session -s
$ tmux attach-session -t
$ tmux rename-session -t
$ tmux choose-session -t
$ tmux kill-session -t
所有下面介紹的快捷鍵,都必須以前置操作開始。
基本操作
? 列出所有快捷鍵;按q返回
d 脫離當(dāng)前會(huì)話,可暫時(shí)返回Shell界面
s 選擇并切換會(huì)話;在同時(shí)開啟了多個(gè)會(huì)話時(shí)使用
D 選擇要脫離的會(huì)話;在同時(shí)開啟了多個(gè)會(huì)話時(shí)使用
: 進(jìn)入命令行模式;此時(shí)可輸入支持的命令,例如 kill-server 關(guān)閉所有tmux會(huì)話
[ 復(fù)制模式,光標(biāo)移動(dòng)到復(fù)制內(nèi)容位置,空格鍵開始,方向鍵選擇復(fù)制,回車確認(rèn),q/Esc退出
] 進(jìn)入粘貼模式,粘貼之前復(fù)制的內(nèi)容,按q/Esc退出
~ 列出提示信息緩存;其中包含了之前tmux返回的各種提示信息
t 顯示當(dāng)前的時(shí)間
ctrl + z 掛起當(dāng)前會(huì)話
窗口操作
c 創(chuàng)建新窗口
& 關(guān)閉當(dāng)前窗口
[0-9] 數(shù)字鍵切換到指定窗口
p 切換至上一窗口
n 切換至下一窗口
l 前后窗口間互相切換
w 通過窗口列表切換窗口
, 重命名當(dāng)前窗口,便于識(shí)別
. 修改當(dāng)前窗口編號(hào),相當(dāng)于重新排序
f 在所有窗口中查找關(guān)鍵詞,便于窗口多了切換
面板操作
" 將當(dāng)前面板上下分屏
% 將當(dāng)前面板左右分屏
x 關(guān)閉當(dāng)前分屏
! 將當(dāng)前面板置于新窗口,即新建一個(gè)窗口,其中僅包含當(dāng)前面板
ctrl+方向鍵 以1個(gè)單元格為單位移動(dòng)邊緣以調(diào)整當(dāng)前面板大小
alt+方向鍵 以5個(gè)單元格為單位移動(dòng)邊緣以調(diào)整當(dāng)前面板大小
q 顯示面板編號(hào)
o 選擇當(dāng)前窗口中下一個(gè)面板
方向鍵 移動(dòng)光標(biāo)選擇對(duì)應(yīng)面板
{ 向前置換當(dāng)前面板
} 向后置換當(dāng)前面板
alt+o 逆時(shí)針旋轉(zhuǎn)當(dāng)前窗口的面板
ctrl+o 順時(shí)針旋轉(zhuǎn)當(dāng)前窗口的面板
z 最大化當(dāng)前所在面板
page up 向上滾動(dòng)屏幕,q 退出
page down 向下滾動(dòng)屏幕,q 退出
參考文章
總結(jié)
以上是生活随笔為你收集整理的linux tmux 详细教程,Linux下的神器介绍之Tmux分屏器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 花亦山心之月未央厉害吗 未央值得培养吗
- 下一篇: linux 内核主线,为AM335x移植