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