iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 18
1
Modern Web

前端工程師也該會的後端技倆系列 第 18

tmux:管理終端 Session、分割視窗的神器

學會怎麼部署工具後,尤其又知道怎麼使用 WSL,通常大部分都會本機完成開發後再丟到遠端主機執行。但有時候必須在遠端同時嘗試作業和看 log,就只能開兩個 SSH 視窗進去管理嗎?

在 Windows 上我們常常會切換多個應用程式來操作,例如同時開 Chrome 寫文章、同時又使用 Telegram 回訊息等等,而在 Linux 上操作感覺就好像要等一個指令做完才能進下一個的感覺。其實這時候我們可以使用 screen 或 tmux 等指令去管理所謂的 session

安裝 tmux

和一般的套件一樣,首先用 apt-get 來安裝 tmux。

sudo apt-get install tmux

接著輸入指令:

tmux

就可以開啟一個 tmux 視窗。

https://ithelp.ithome.com.tw/upload/images/20191003/20119970jeIHLcfqJ1.png

分割 tmux 視窗

tmux 的快速鍵通常都要搭配 Ctrl + b 再加上別的東西才能使用。

例如

  • Ctrl+b 後再按「"」可以水平分割。
  • Ctrl+b 後再按「%」可以垂直分割。

這個是水平分割:

https://ithelp.ithome.com.tw/upload/images/20191003/20119970l4h7j1kvnY.png

搭配使用就可以在一個 session 中割出好幾個 pane。

https://ithelp.ithome.com.tw/upload/images/20191003/20119970g9VkwdHrgY.png

切換 pane

使用 Ctrl+b 再加方向鍵就可以移動到不同的 pane,也可以使用 Ctrl+b 再按 q,這時候會跳出數字讓你選擇你要切換的目標 pane。

https://ithelp.ithome.com.tw/upload/images/20191003/20119970ojihjb6xEK.png

離開、返回 session

使用 Ctrl+b 再按 d 可以 detach(退出)目前的 session。而使用這個指令

tmux a

可以 attach(返回)到最近的 session。

tmux 常見的用法

雖然 Node.js 服務通常會使用 pm2 來管理處理程序,但如果今天臨時要用個不熟悉的 Python 或 Java 套件,就可以開一個 tmux session 讓服務保持運作。另外,如果要一邊開 vim 寫 code,另外一邊用自動重新整理的(如 nodemon)等服務自動看程式執行的狀況就不錯。甚至可以再多開一個 pane 用來查看 CPU、Memory 使用狀況!

本篇文章同步發表在 Noob's Space


上一篇
API 實作(五):用 DevTools 查看 HTTP 封包
下一篇
CloudFlare:免費 CDN、DNS 託管,加速又防 DDOS
系列文
前端工程師也該會的後端技倆30

尚未有邦友留言

立即登入留言