對于程序員來說,一個好用且高效的軟件工具就如同加持了神技的游戲角色。下面本文就給大家介紹一個神器 Tmux 以及個人的使用總結雁歌。
我所認識的 Tmux
在工作中,我把 tmux 當作終端會話管理器來使用枫夺,效果是:當前 shell 關閉后将宪,只要不重啟服務器,在 tmux 會話里運行的指令就不會退出橡庞,對于運維及研發(fā)來講较坛,此工具掌握后,有助于提高工作效率扒最!而且丑勤,逼格也不低哦。
Tmux 的會話
一個 Tmux 會話中可以包含多個窗口吧趣。會話功能非常簡單易用法竞,例如可以為一個特定的項目創(chuàng)建一個專用的 Tmux 會話。若要創(chuàng)建一個新的會話强挫,只需要在終端運行如下的命令:
tmux new -s <name-of-my-session>
假設我還需要開發(fā)另一個項目岔霸,于是我就會為此再新建一個會話。雖然進入了新的會話俯渤,但是原來的會話并沒有消失呆细。所以我可以在稍后回到之前的會話繼續(xù)工作。若要創(chuàng)建一個新的會話八匠,只需要按下 Ctrl-b : 絮爷,然后輸入如下的命令:
new -s <name-of-my-new-session>
Tmux 的切換
若要獲取現(xiàn)有會話的列表,可以按下 Ctrl-b s梨树。下圖所示的就是會話的列表
列表中的每個會話都有一個 ID坑夯,該 ID 是從 0 開始的。按下對應的 ID 就可以進入會話抡四。如果你已經(jīng)創(chuàng)建了一個或多個會話柜蜈,但是還沒有運行 Tmux仗谆,那么可以輸入如下命令以接入已開啟的會話。
tmux attach
tmux下無法滾屏很煩人跨释。
一招即可解決: CTRL + B 再按 [胸私,這時就可以用光標鍵來操作翻頁滾屏
如果需要兼容vim的操作方式,那么在~/.tmux.conf加上一行:
setw -g mode-keys vi
進階神器“Tmuxinator”
Tmuxinator 是一個 Ruby 的 gem 包鳖谈,可用于創(chuàng)建 Tmux 的會話。它的工作方式是先在配置文件中定義會話中的細節(jié)阔涉,然后用 1 條命令創(chuàng)建出這些會話缆娃。
下面就讓我們看看如何安裝 Tmuxinator 以及如何添加配置來為指定項目開啟一個會話」迮牛可以通過運行如下命令安裝 Tmuxinator 的 gem 包贯要。
$ yum install ruby -y
$ gem install tmuxinator
下面就讓我們?yōu)樯鲜龅膽贸绦颍ㄓ?3 個窗口,分別是“PythonServer”, “PythonShell” 和 “Mysql”)來創(chuàng)建一個配置文件吧椭住。
下面這條命令的作用是為這個項目創(chuàng)建并打開一個配置文件崇渗。
$ tmuxinator new project_a
按下回車鍵后,就會自動打開文件 ~/.tmuxinator/project_a.yml京郑。為了實現(xiàn)項目 A 所需的配置宅广,你需要把 project_a.yml 的內容更新為:
cat /root/.tmuxinator/project_a.yml
name: project_a
root: ~/
windows:
- PythonServer: 'python /opt/project/cmdb/manage.py runserver 0.0.0.0:8000'
- PythonShell: 'python /opt/project/cmdb/manage.py shell'
- Mysql: 'mysql -uroot -p123123'
一旦將上面的配置添加到了項目 A 的 Yaml 文件中,只需要運行下面這條命令就可以啟動 Tmux 的會話了些举。
$ tmuxinator start project_a
當然如果愿意的話跟狱,你也可以使用 Tmuxinator 命令的別名:
alias mux=tmuxinator
mux start project_a
大功告成了。現(xiàn)在户魏,每當想進入項目 A 的編碼工作時驶臊,就只需要運行 Tmuxinator 命令。
最 后
C-b c 創(chuàng)建一個新的窗口
C-b n 切換到下一個窗口
C-b p 切換到上一個窗口
C-b l 最后一個窗口,和上一個窗口的概念不一樣喲,誰試誰知道
C-b w 通過上下鍵選擇當前窗口中打開的會話
C-b 數(shù)字 直接跳到你按的數(shù)字所在的窗口
C-b d 臨時斷開會話 斷開以后,還可以連上的喲:)
C-b " 分割出來一個窗口
C-b % 分割出來一個窗口
C-b o 在小窗口中切換
C-b (方向鍵)
C-b ! 關閉所有小窗口
C-b x 關閉當前光標處的小窗口
C-b t 鐘表
C-b , 重命名當前窗口叼丑;這樣便于識別