效能系列三:Tmux - Linux從業者必備利器tmux
序:
個人以前用的一直是
session ,其實功能上和tmux等同,但體驗過tmux後才發現tmux的強大,不僅僅是酷炫,更是能把日常行為操作“映象”出來,非常棒。故此推薦!
為什麼要用tmux
tmux是什麼?tmux是linux中一種管理視窗的程式。那麼問題來了:Mac自帶的Iterm2很好用啊。既支援多標籤,也支援窗體內部Panel的分割,為什麼還要用tmux?其實,多標籤和分割窗體只是tmux的部分功能。用tmux的主要原因是它提供了一個窗體組隨時儲存和恢復的功能。看看以下的使用場景是否適合你:
公司桌上型電腦開了一堆vim和log列印視窗下班了。到家後靈感突發,想要繼續coding,登陸VPN,SSH連上臺式後發現又要重新開啟各種視窗,瞬間沒心情了。。。FML!這個時候你就可以在你的公司桌上型電腦上裝個tmux。同一組工作環境,在多處共享。
公司伺服器上除錯程式,開了一堆視窗。出去吃了個飯,發現SSH超時了,broken pipe。重頭開始。。。FML!如果你之前使用了tmux就不會有這樣的問題,attach就能找回原來開啟的那些視窗。
tmux的基本概念
我們先來理解下tmux的幾個元素。tmux的主要元素分為三層:
Session
一組視窗的集合,通常用來概括同一個任務。session可以有自己的名字便於任務之間的切換。
Window
單個可見視窗。Windows有自己的編號,也可以認為和ITerm2中的Tab類似。
Pane
窗格,被劃分成小塊的視窗,類似於Vim中 C-w +v 後的效果。
為了更好的理解,下面是三個元素在tmux中的具體展現。
可以看到Session總在tmux的左下角顯示,通常會為他命名。例如我正在寫部落格,開了很多視窗那麼我就會把這組視窗命名為blog方便之後的重連和切換。而Window也會在最下方以一種Tab的形式展現。每個window都有自己的需要,也會以當前活動程序的名字命名。而Pane就比較好理解,即把單個視窗分割成若干個小塊後的元素。
安裝
本文以Mac環境為例。Linux的方法類似Centos系列的可以用yum install tmux安裝。
brew install tmux
安裝完直接執行tmux可能會有以下報錯,按照下面的步驟執行命令即可
$junyilu> tmux
dyld: Library not loaded: /usr/local/lib/libevent-2。0。5。dylib
Referenced from: /usr/local/Cellar/tmux/1。9a/bin/tmux
Reason: image not found
Trace/BPT trap: 5
$junyilu> brew link libevent
Linking /usr/local/Cellar/libevent/2。0。22。。。
Error: Could not symlink lib/pkgconfig/libevent。pc
/usr/local/lib/pkgconfig is not writable。
$junyilu> sudo chown junyilu /usr/local/lib/pkgconfig
$junyilu> brew link libevent
Linking /usr/local/Cellar/libevent/2。0。22。。。 25 symlinks created
tmux的基本操作
Prefix-Command前置操作:所有下面介紹的快捷鍵,都必須以前置操作開始。tmux預設的前置操作是CTRL+b。例如,我們想要新建一個窗體,就需要先在鍵盤上摁下CTRL+b,鬆開後再摁下n鍵。
下面所有的
prefix
均代表
CTRL+b
Session相關操作
操作快捷鍵檢視/切換sessionprefix s離開Sessionprefix d重新命名當前Sessionprefix $
Window相關操作
操作快捷鍵新建視窗prefix c切換到上一個活動的視窗prefix space關閉一個視窗prefix &使用視窗號切換prefix 視窗號
Pane相關操作
操作快捷鍵切換到下一個窗格prefix o檢視所有窗格的編號prefix q垂直拆分出一個新窗格prefix “水平拆分出一個新窗格prefix %暫時把一個窗體放到最大prefix z
tmux的一些個性化定製
預設的tmux風格比較樸素甚至有些醜陋。如果希望做一些美化和個性化配置的話,建議使用gpakosz的tmux配置。它的本質是一個tmux配置檔案,實現了以下功能:
基於powerline的美化
顯示筆記本電池電量
和Mac互通的剪下板
和vim更相近的快捷鍵
安裝方式也很簡單如下
(注意:如果想使用powerline美化需要先安裝powerline,具體方法見
之前的博文
)
$ cd
$ rm -rf 。tmux
$ git clone
https://
github。com/gpakosz/。tmu
x。git
$ ln -s 。tmux/。tmux。conf
$ cp 。tmux/。tmux。conf。local 。
安裝完以後就能獲得以下效果了:
本文詳細介紹tmux的概念和搭建過程
文章歡迎轉載,但轉載時請保留本段文字,並置於文章的頂部作者:盧鈞軼(cenalulu)本文原文地址:
http://
cenalulu。github。io/linu
x/tmux/
其它效能系列篇
效能系列之:iTerm2 快捷鍵大全
程式設計師內功系列——iTerm與Zsh篇
以太python小範圍溝通群:662769442
Ansible中文權威主群:372011984
AWK&SED企業實戰: 260039357
Docker企業架構實踐2群: 601403280
ELK企業架構1群: 378216203
公眾號: linux178 掃碼關注,歡迎分享
http://www。ssforce。cn