在linux上工作的朋友,可能會常常遇到這種情況:
痛點1:在公司用putty連著linux開發機,程式正跑著,不知不覺到了下班的時候,要和老婆/女朋友約會了,但是程式還沒跑完,並且進度有點緊,還得把工作帶回家,怎麼辦?
如果斷開網路,putty就會斷,無法看到程式跑的怎麼樣了。
痛點2:在linux上用vim寫著**,想除錯一下。要麼儲存**-->退出-->編譯。要麼再開乙個terminal視窗,除錯的時候要兩個視窗來回切,好麻煩!
此時就需要神器tmux。
tmux是什麼呢?
tmux 是乙個工具,用於在乙個終端視窗中執行多個終端會話。不僅如此,你還可以通過 tmux 使終端會話執行於後台或是按需接入、斷開會話,這個功能非常實用。
如何安裝tmux?
在ubuntu上安裝tmux很簡單,只需要執行命令:
sudo apt-get install tmux
即可。如何使用tmux?
網上關於tmux的教程其實有很多,我只把實際工作中最實用的部分列出來。
先列乙個tmux最重要的快捷鍵:"ctrl+b"。
tmux為了使其快捷鍵不與vim以及作業系統等的快捷鍵衝突,設定了乙個「快捷鍵字首」的概念。也就是說,當我們使用tmux任何快捷鍵的時候,都必須先按"ctrl+b"。
針對使用過程,首先明確一下tmux裡的幾個概念:會話、視窗、窗格。
我們不去拗口的講這三個概念是什麼意思,直接實際操作起來,讓你理解。
使用tmux,必須首先建立會話。建立方法:
tmux new -s 你指定的會話名
建立成功後,會進入你建立的會話。
針對痛點1:
如果這時候我們正跑著**,需要斷網了。此時只需要按快捷鍵"ctrl+b",然後再按一下"d"。也就是"ctrl+b"和"d"的組合,就從這個會話中退出了。
但是退出並不意味著結束,當我們回到家,重新用putty連上linux,仍然可以回到這個"會話"(也就是這個工作狀態)當中來。
通過命令"tmux ls",我們能夠看到目前系統中有哪些會話。
而命令"tmux a -t 你要進入的會話名",就可以實現回到"會話"的功能。
你會發現,上次斷網之前的工作狀態被好好的儲存著,可以繼續工作啦。
針對痛點2:
我們回到會話中。想再寫**的同時除錯怎麼辦?
tmux可以實現視窗分屏功能:
快捷鍵:"ctrl + b" 和 "%"
你會發現,視窗被分成了兩個窗格。這樣就可以邊寫**,邊除錯,而不用開兩個terminal了!
痛點2的延伸:
你學會了tmux的分屏功能,用著很爽,邊寫**,邊除錯。這個時候老大來了,給你乙個新任務:寫個小指令碼。
因為你正邊寫邊除錯**,分屏功能用著很爽,肯定不會關掉這個分屏的terminal。只好新開乙個terminal咯?
不用這麼麻煩!新開乙個視窗即可!
快捷鍵:"ctrl + b "和"c"。
你會發現,新開了乙個視窗,之前分屏的視窗隱藏了。在terminal最下方,顯示著視窗的編號。此時你蹭蹭蹭把小指令碼寫完了,如何返回之前的視窗呢?
快捷鍵:"ctrl + b "和"你要返回的視窗編號"。
如下圖所示。
tmux和vim的衝突問題:快捷鍵和配色。
你進入tmux後,發現在tmux裡使用vim,之前設定的外掛程式的快捷鍵不能用了,配色都變了。不要慌,下面是解決方案。
快捷鍵:
開啟putty設定介面,在terminal –> keyboard下,將the function keys and keypad從預設選項「esc[n~」更改為「xterm r6」,記得儲存設定,之後功能鍵就可用了。
如下圖所示。
配色:
兩個解決方法
1、一種解決方法是,export出term環境變數為xterm-256color。(同時需要上面快捷鍵的操作,即把預設選項「esc[n~」更改為「xterm r6」)直接執行下列**:
echo 'export term=xterm-256color' >> ~/.bashrc
source ~/.bashrc
2、另一種解決方法是使用-2引數啟動tmux,強制tmux認為終端支援256 colours:
echo 'alias tmux="tmux -2"' >> ~/.bashrc
source ~/.bashrc
按下ctrl-b
後的快捷鍵如下:
1、tmux 入門介紹
2、tmux 速成教程:技巧和調整
3、解決tmux在putty下工作異常的問題
Linux終端神器tmux
tmux是linux終端連線的乙個工具。相對於linux自帶的終端tmux有很多新加入的功能,但是對我來說tmux主要有兩個作用,乙個是分屏,乙個是在後台執行服務 在已經安裝好tmux的機器上,只要在終端輸入tmux這個命令就可以進入tmux環境了。1.分屏 ctrl b 左右分屏 ctrl b 上...
Tmux 分屏神器
效果 ubuntu 或 debian sudo apt get install tmux centos 或 fedora sudo yum install tmux mac brew install tmux 1.基礎命令 啟動 tmux 退出 exit 2.會話管理 建立會話 tmux new s...
Tmux 終端復用神器
sudo yum install y tmux新建會話,如新建立乙個會話以 testsession 命名 tmux new s testsession檢視建立得所有會話 tmux ls登入乙個已有會話。即從終端環境進入會話。第乙個引數a也可以寫成attach。後面的test是會話名稱。tmux a ...