Linux終端復用器 Tmux

2021-08-17 14:56:36 字數 3497 閱讀 1770

開發linux程式時,經常需要通過終端連線到linux伺服器,然後在上面進行一些操作,比如設定一些環境變數、編譯、測試等等,而有些過程會比較久,一旦中間出現一些網路不穩定斷開連線就經常需要重新來過。

tmux就可以很好的解決這個問題,通過在linux伺服器上開乙個終端的deamon,然後需要時連線上去,就算斷網,那個終端也一直還在,可以繼續之前的操作。當然tmux的功能不止這個,還有分屏等功能。

tmux是一種terminal multiplexer,翻譯過來就終端復用器,它可以在linux上以後臺的形式開多個終端,並支援標籤功能和多視窗功能。使用者按需要attach到對應的視窗即可,如果沒有把後台停止或linux關機,之前的操作就會一直保留著。並且還能在視窗間進行快捷的跳轉,複製文字等。

tmux有以下幾個名詞:

session會話:乙個伺服器可以包含多個會話

window視窗:乙個會話可以包含多個視窗

pane面板:乙個視窗可以包含多個面板

這個需要root許可權

# apt-get install tmux    # ubuntu

# yum install tmux

# centos

在公用的伺服器,一般使用者是沒有root許可權的,如果管理員沒有給安裝tmux,那這時候就需要自己通過原始碼安裝自己的home目錄下了。

./configure --prefix=$home/localmake && make install

./configure --prefix=$home/localmake && make install

dir=~/local./configure cflags="-i$dir/include" ldflags="-l$dir/lib" --prefix=$home/localmake && make install

最後把~/local/bin追加加到path環境變數中,就可以直接用了

命令列

$ tmux             #啟動乙個新的session

$ tmux new -s name #指定名字啟動乙個新的session

$ tmux ls #列出當前所有session

$ tmux a [-t name] #根據名字再連線回去

進入tmux後可以使用快捷鍵進行一些操作,所有的操作都是以字首ctrl+b開始,然後鬆開按另外乙個按鍵就對應乙個操作。當然這個字首是可以通過配置檔案修改的。以下為一些常用快捷鍵:

:new #建立新的session,其中:是進入命令列模式

d #detach,退出tmux session,回到父級shell

s #列出所有session,可以通過j,k,回車切換

c #建立新的window

x #列出所有window

#切換到第n個window

, #為當前window命名

% #建立垂直切分的pane

" #建立水平切分的pane

! #公升級當前pane為乙個window

t #顯示乙個時鐘

? #快捷幫助列表,忘記了可以去這裡看看

在任意pane中輸入exit就可以退出當前pane,乙個window所有pane關掉也就關掉了,在忘記命令後可以用這個關掉想關的pane,window或session。

tmux中有乙個拷貝模式,通過[進入,按下開始拷貝。然後用j,k,h,l選擇文字,按下拷貝所選內容,然後通過]進行貼上。

在tmux使用滑鼠選擇一段文字,預設的是只可以在tmux中貼上,那怎麼才能從tmux中複製東西到外面?我一般都是使用shift+滑鼠左鍵來進行拷貝,就可以貼上到外面了。

tmux可以通過在home目錄下新建乙個.tmux.conf檔案來進行一些個性化配置,以符合不同人的使用習慣。以下為一些簡單的設定。

# r可以過載配置

bind r source-file ~/.tmux.conf \; display "reloaded!"

# 字首繫結 (ctrl+a)

set -g prefix ^a

unbind ^b

bind a

send-prefix

#開啟vi風格選擇文字

set -g mode-keys vi

#可以使用滑鼠拖拽改變pane大小

set -g mouse-resize-pane on

set -g mouse-select-pane on

#可以使用滑鼠選擇window

set -g mouse-select-window on

#擴充套件滑鼠的功能

set -g mode-mouse on

#使用alt+j,k,h,l來選擇pane

bind -n m-h select-pane -l

bind -n m-l select-pane -r

bind -n m-k select-pane -u

bind -n m-j select-pane -d

#使用shift+right,left來選擇window

bind -n s-left previous-window

bind -n s-right next-window

#設定最大歷史輸出

set -g history-limit 10000

tmux相當於在終端裡面又開了另外乙個終端,不要在自己外面這個終端拖動滾動條來上下翻頁,而是要在tmux裡面翻頁來檢視歷史輸出,可以通過pguppgdnshift + 滑鼠滾輪等來進入拷貝模式,然後進行翻頁檢視歷史輸出。

Tmux linux終端復用器

tmux linux終端復用器 由於經常需要登入到遠端伺服器進行操作,但是乙個終端又滿足不了我們很多任務的需求,但是tmux的出現解決了這個問題 ubutun sudo apt get install tmux使用步驟在終端下輸入tmux即可常用命令tmux所有自帶命令都預設需要先按ctrl b,然...

linux終端復用 tmux

sudo apt get install tmuxtouch tmux.conf gedit tmux.conf.tmux.conf內容 set g mouse on在tmux終端裡,ctrl b,shift 之後 source tmux.conf便可在tmux環境下使用滑鼠選中和上下滾動。ctrl...

MP4 二 解復用器

mp4 二 解復用器 2 chunk和sample的關係,乙個chunk中有乙個或多個sample,乙個檔案有多個chunk,在stco中標記了chunk在 檔案中的絕對位置。不是相對於某乙個box.stsz標記了每乙個sample的大小,stsc則是chunk和sample的對應關係。這裡有個問題...