十分鐘學會 tmux

tmux 是一款終端複用命令行工具,一般用於 Terminal 的窗口管理。在 macOS 下,使用 iTerm2 能應付絕大多數窗口管理的需求。

如上圖所示,iTerm2 能新建多個標籤頁(快捷鍵 ⌘T),也能在同一個窗口中分割出多個窗格(快捷鍵 ⌘D 或 ⌘⇧D)。

tmux 相比 iTerm2 的優勢在於:

接下來我們花十分鐘來掌握下 tmux 的基礎用法:

安裝運行

macOS 上使用 Homebrew 安裝即可:

brew install tmux

安裝完成後,運行 tmux 新建一個 tmux 的會話(session),此時窗口唯一的變化是在底部會出現一個 tmux 的狀態欄。我們先按下 tmux 默認的前綴快捷鍵 ⌃b 將其激活爲快捷鍵接收模式,再按下 % ,即可將當前窗口切分爲左右兩個窗格。

快捷鍵

一般情況下 tmux 中所有的快捷鍵都需要和前綴快捷鍵 ⌃b 來組合使用(注:⌃ 爲 Mac 的 control 鍵),以下是常用的窗格(pane)快捷鍵列表,大家可以依次嘗試下:

窗格操作

窗口操作

tmux 除了窗格以外,還有窗口(window) 的概念。依次使用以下快捷鍵來熟悉 tmux 的窗口操作:

會話操作

如果運行了多次 tmux 命令則會開啓多個 tmux 會話(session)。在 tmux 會話中,使用前綴快捷鍵 ⌃b 配合以下快捷鍵可操作會話:

在 shell 主進程下運行以下命令可以操作 tmux 會話:

 

tmux new -s foo # 新建名稱爲 foo 的會話
tmux ls # 列出所有 tmux 會話
tmux a # 恢復至上一次的會話
tmux a -t foo # 恢復名稱爲 foo 的會話,會話默認名稱爲數字
tmux kill-session -t foo # 刪除名稱爲 foo 的會話
tmux kill-server # 刪除所有的會話

 

除以上提到的快捷鍵以外,tmux 還有許多其他的快捷鍵和命令,使用前綴快捷鍵 ⌃b? 可以查看所有的快捷鍵列表,該列表視圖爲 tmux copy 模式,該模式下可使用以下快捷鍵(無需加 ⌃b 前綴):

常見配置與問題

1、鼠標滾屏

tmux 默認配置中最糟糕的體驗就是滾屏查看和文本複製(大家可以先試試看)。你需要先使用 ⌃b [ 快捷鍵進入 copy 模式,然後使用翻頁、字符定位來選擇需要的字符,效率遠沒有鼠標選擇來的快。

因此 tmux 提供了一些個性化配置項來優化這些配置,首先在 shell 中運行 touch ~/.tmux.conf 新建用戶配置文件。在文件中增加以下內容:

# 開啓鼠標模式
set -g mode-mouse on
​
# 允許鼠標選擇窗格
set -g mouse-select-pane on
​
# 如果喜歡給窗口自定義命名,那麼需要關閉窗口的自動命名
set-option -g allow-rename off
​
# 如果對 vim 比較熟悉,可以將 copy mode 的快捷鍵換成 vi 模式
set-window-option -g mode-keys vi

配置文件修改完成後,可以 tmux kill-server 重啓所有 tmux 進程,或者在 tmux 會話中使用 ⌃b : 進入控制檯模式,輸入 source-file ~/.tmux.conf 命令重新加載配置。

2、鼠標複製

tmux 下開啓鼠標滾屏後,複製文本有兩種方式:

3、tips

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://www.cnblogs.com/kaiye/p/6275207.html