歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 從 screen 切換到 tmux

從 screen 切換到 tmux

日期:2017/2/28 14:27:27   编辑:Linux教程

在我的 Linux 生活中,我曾做過幾次重要的切換。我先是從 Archlinux 切換到 Gentoo,後來又從 bash 切換到了 zsh。現在,我又從 screen 切換到 tmux。對於各個終端控來說,screen 是幾乎每天都會使用的好工具,拋開確實不易。但有了更加好用的 tmux,我為什麼不切換?

我為什麼要從 screen 切換到 tmux

對我來說,從 screen 切換到 tmux 不是平白無故的,自然有其充分的理由。我感覺使用 tmux 更加方便、靈活和高效。我非常喜歡 tmux 的這些方面:

  • 垂直分割窗口,當然水平也是可以的
  • vi 或 emacs 按鍵綁定模式
  • 有多個粘貼緩沖,可完全由按鍵進行選取、復制、以及粘貼操作
  • 配置很容易,尤其是狀態行
  • 腳本化,通過腳本可以方便的控制 tmux 會話
  • 有預設布局,可搜索窗口,自動命名窗口名稱
  • 文檔清晰、詳盡

更改默認按鍵前綴

從 screen 切換到 tmux 十分平滑,tmux 的按鍵設置與 screen 大都相同,只是其默認按鍵前綴為 Ctrl-b。為了延續在 screen 中的使用習慣,我將其更改為 Ctrl-a。將下列內容加到 $HOME/.tmux.conf 中即可:

set -g prefix ^a
unbind ^b
bind a send-prefix

按鍵綁定

我還在 .tmux.conf 中定義了以下按鍵綁定:

  • 水平或垂直分割窗口

    unbind '"'
    bind - splitw -v # 分割成上下兩個窗口
    unbind %
    bind | splitw -h # 分割成左右兩個窗口
    
  • 選擇分割的窗格

    bind k selectp -U # 選擇上窗格
    bind j selectp -D # 選擇下窗格
    bind h selectp -L # 選擇左窗格
    bind l selectp -R # 選擇右窗格
    
  • 重新調整窗格的大小

    bind ^k resizep -U 10 # 跟選擇窗格的設置相同,只是多加 Ctrl(Ctrl-k)
    bind ^j resizep -D 10 # 同上
    bind ^h resizep -L 10 # ...
    bind ^l resizep -R 10 # ...
    
  • 交換兩個窗格

    bind ^u swapp -U # 與上窗格交換 Ctrl-u
    bind ^d swapp -D # 與下窗格交換 Ctrl-d
    
  • 執行命令,比如看 Manpage、查 Perl 函數

    bind m command-prompt "splitw -h 'exec man %%'"
    bind @ command-prompt "splitw -h 'exec perldoc -f %%'"
    

定制狀態行

狀態行左邊默認就很好了,我對右邊定制了一下,顯示 uptime 和 loadavg:

set -g status-right "#[fg=green]#(uptime.pl)#[default] • #[fg=green]#(cut -d ' ' -f 1-3 /proc/loadavg)#[default]"

下面兩行設置狀態行的背景和前景色:

set -g status-bg black
set -g status-fg yellow

默認啟動應用

當 tmux 啟動時,可以默認啟動一些應用:

new -s work mutt # 新建名為 work 的會話,並啟動 mutt
neww rtorrent # 啟動 rtorrent
neww vim # 啟動 vim
neww zsh
selectw -t 3 # 默認選擇標號為 3 的窗口

復制與粘貼操作

  1. 按 C-a [ 進入復制模式,如果有設置 setw -g mode-keys vi 的話,可按 vi 的按鍵模式操作。移動至待復制的文本處,按一下空格,結合 vi 移動命令開始選擇,選好後按回車確認。

  2. 按 C-a ] 粘貼已復制的內容。

tmux 1.8 發布,Linux 終端復用器 http://www.linuxidc.com/Linux/2013-03/81980.htm

Tmux:終端復用器 http://www.linuxidc.com/Linux/2013-07/86776.htm

Tmux 的詳細介紹:請點這裡
Tmux 的下載地址:請點這裡

Copyright © Linux教程網 All Rights Reserved