在git-bash使用Tmux


在git-bash使用Tmux

以提取出來的Tmux的Windows版本為基礎,我們可以配置在git-bash中使用Tmux來高效工作。

Tmux介紹

Tmux是個窗口管理器,Tmux負責管理和保存命令行窗口。使用Tmux有很多好處,主要有以下兩點:

  1. 遠程服務器上持久地保存工作狀態。

比如,我在本地或服務器做某項工作,需要在Terminal打開幾個窗口。每次換工作,還需要切換。用Tmux,便可以按照Session進行管理,每次輕松打開切換。如果Tmux保存在遠端服務器,這點尤為方便。

  1. 隨時隨地斷開或連接Session。比如,在服務器上面運行一條命令,但是擔心連接斷開后命令終止,此時在tmux中運行命令,此時斷網關機便問題不大,只需隨后恢復Session便可以。

tmux基本架構

tmux是由Session組成;一個Session可以包含多個window;一個window可以包含多個pane。

所謂pane,就是經常看到的,把一個window橫向或者縱向分割成多塊,每塊就是一個pane。這些pane一起組成了一個window。

tmux安裝

安裝方法參見這個Github連接Tmux目錄下有兩個文件,復制到git-bash下對應的的usr/binusr/share文件夾即可。

tmux基本配置

# 開啟鼠標模式
set-option -g 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

這上面只是一些基本配置。之前的GitHub倉庫中,在tmux目錄下是有作者自己的.tmux.conf配置文件的。按需取用,因為這個配置需要配合插件使用。

通用命令

# 以下命令可以關閉session,window,pane。
ctrl + d

exit

Prefix + x

tmux kill-session -t [name]
tmux kill-window -t [name]
tmux kill-pane -t [name]
# 上面的 name 可以用系統自動分配的 0, 1...來代替。比如 pane 就是用這樣的數字來區分的。

Seesion常用命令

Tmux為了防止與全局快捷鍵沖突,大部分快捷鍵需要先需要輸入前綴Ctrl + b,下文用Prefix代替。

# 創建&進入一個session
tmux new # 不指定session name
tmux new -s [session-name]

# 斷開(detach)Session
tmux detach
Prefix d # 要和 ctrl + d 區分

# 恢復Session
tmux a
tmux a -t [session-name]

# 列出當前Session
tmux ls # tmux外使用
Prefix s # tmux 內使用,這條命令不夠詳細;可以使用
Prefix w # 完全顯示 session + window的詳細信息

# 重命名Session,在tmux內使用
Prefix $

window常用命令

# 創建
Prefix c

# 選擇窗口
# 這個可以不用記,prefix+S 選擇窗口也很方便
Prefix + [number] # 選擇第n個窗口
Prefix + p/n	# 前/后一個窗口

# 關閉窗口;只記exit即可
Prefix &
exit

# 列出所有window(包含其他Session)
# 這和prefix+s的區別是:會自動展開所有session下的Windows。
Prefix w 
h/l # 打開/關閉session的詳情頁
j/k # 前后選擇

# 搜索窗口
Prefix f

# 重命名當前窗口
Prefix ,

pane常用命令

# 創建
Prefix %	# 水平窗格,最常用;也就是左右兩格
Prefix '"'	# 垂直窗格,上下兩格

# 切換
# 如果在配置文件中打開了鼠標點擊切換的話,就可以直接用鼠標
# 但是如果是純命令行,就需要使用了
Prefix o    # 在窗格間切換
Prefix q	# 顯示窗格編號,輸入編號切換

# 將當前窗格,在一個新窗口打開
# 這會在當前session下新建一個窗口
Prefix !

總結

這些命令經常使用,自然就記住了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM