初识tmux---编译安装tmux
tmux的簡介:
? ? ? ? ??tmux是一個優秀的終端復用軟件,即使非正常掉線,也能保證當前的任務運行;這一點對于遠程SSH訪問特別有用,網絡不好的情況下仍然能保證工作現場不丟失;此外,tmux完全使用鍵盤控制窗口,實現窗口的切換功能。
tmux兩個主要功能:
? ? ? ? ? ?split(切割)窗口;可以在一個terminal下打開多個終端,也可以對當前屏幕進行各種split,即可以 同時打開多個顯示范圍更小的終端。
? ? ? ? ? ?在使用SSH的環境下,避免網絡不穩定,導致工作現場的丟失。想象以下場景, 你在執行一條命令的過程中,由于網絡不穩定,SSH連接斷開了。這個時候,你就不知道之前 的那條命令是否執行成功。如果此時你打開了很多文件,進入了較深層次的目錄,由于網絡 不穩定,SSH連接斷開。重新連接以后,你又不得不重新打開那些文件,進入那個深層次的 目錄。如果使用了tmux,重新連接以后,就可以直接回到原來的工作環境,不但提高了工作 效率,還降低了風險,增加了安全性。
以下是 tmux 超越 screen 的地方:
? ? ? ? ? ?screen 的項目大體上已經終止了,并且代碼中有大量的問題;
? ? ? ? ? ?tmux 是一個活躍的項目,并且其代碼庫經常進行更新;
? ? ? ? ? ?tmux 使用的是真正的客戶端/服務器模型,而 screen 只是模擬了這種模型的行為;
? ? ? ? ? ?tmux 同時支持 emacs 和 vim 的快捷鍵;
? ? ? ? ? ?tmux 支持自動重命名窗口;
? ? ? ? ? ?tmux 可以高度的腳本化;
? ? ? ? ? ?tmux 的窗口分割功能更加先進;
PS:一個會話(Session)可以包含多個窗口,一個窗口(Window)可以包含多個窗格(Pane)。
一,編譯安裝tmux
1,首先安裝依賴包libevent-2.0.21-stable.tar.gz
# wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz
# tar xf libevent-2.0.21-stable.tar.gz
# cd libevent-2.0.21-stable
# ./configure?
# make && make install
2,編譯安裝tmux
# git clone https://github.com/tmux/tmux.git
# cd tmux
# sh autogen.sh
# ./configure --prefix=/usr/lcoal/tmux
# make && make install
3,提供頭文件
# ln -sv /usr/local/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5
# ldconfig -v
4,將tmux 腳本路徑加入到PATH
# vim /etc/profile.d/tmux.sh
export PATH=$PATH:/usr/local/tmux/bin
# source /etc/profile
5,將tmux命令man 文檔路徑添加到MANPATH
# vim /etc/man.config
MANPATH /usr/local/tmux/share/man
6,配置tmux
# vim ~/.tmux.conf
# 設定tmux 命令激活按鍵為ctrl+a
set-option -g prefix C-a
unbind-key C-b
bind-key C-a send-prefix
# 設定默認Shell
set-option -g default-shell /bin/zsh
# 設置窗口可自動調整index
set -g renumber-windows on
# 設定窗口起始
set-option -g base-index 1 ? ? ?### 窗口的初始序號;默認為0,這里設置為1
set-option -g status-keys vi ? ? ? ? ?###操作狀態欄時的默認鍵盤布局;可以設置為vi或emacs
set-option -g display-time 5000 ? ### 提示信息的持續時間;設置足夠的時間以避免看不清提示,單位為毫秒
set-option -g repeat-time 1000 ? ?###控制臺激活后的持續時間;設置合適的時間以避免每次操作都要先激活控制臺,單位為毫秒
# history
set-option -g history-limit 4096
# 設置復制模式,空格開始選,Enter結束復制
set-window-option -g mode-keys vi
# 開啟status-bar uft-8支持
set-option -g status-utf8 on ? ? ? ?### 開啟狀態欄的UTF-8支持
# 設置pane前景色 ?
set -g pane-border-fg green ?
# 設置pane背景色 ?
set -g pane-border-bg black
# 設置終端顏色為256色
set -g default-terminal "screen-256color"
# 設置窗口列表顏色
setw -g window-status-fg cyan
setw -g window-status-bg default
setw -g window-status-attr dim
# 切換panes
bind h select-pane -L
bind j select-pane -D
bind K select-pane -U
bind l select-pane -R
bind-key C-l last-pane
##Status bar
#colors
set -g status-bg black
set -g status-fg white
#開啟status-bar uft-8支持
set -g status-utf8 on
## slignment
set-option -g status-justify centre
## spot at left
set-option -g status-left '#[bg=black,fg=green][#[fg=cyan]#S#[fg=green]]'
set-option -g status-left-length 20
## window
setw -g automatic-rename on
set-window-option -g window-status-format '#[dim]#I:#[default]#W#[fg=grey,dim]'
## spot at right
set -g status-right '#[fg=green][#[fg=cyan]%Y-%m-%d#[fg=green]]'
set-option -g status-right-length 50
## resize pane
bind -r ^k resizep -U 10
bind -r ^j resizep -D 10
bind -r ^h resizep -L 10
bind -r ^l resizep -R 10
# 設置 r 鍵為加載配置文件,并提示信息
bind r source-file ~/.tmux.conf \; display "配置文件已重新加載!"
# 設置窗口名字不能修改
set-option -g allow-rename off
# 設置啟動窗口時默認名字
bind-key c new-window -n 'zsh'
# 開啟window事件提示
setw -g monitor-activity on
set -g visual-activity on
set-window-option -g mode-keys vi ? ?### 復制模式中的默認鍵盤布局;可以設置為vi或emacs
set-window-option -g utf8 on ? ? ? ? ? ? ?### 開啟窗口的UTF-8支持
# 復制和粘貼模式的快捷鍵
bind y copy-mode
bind c-y copy-mode
bind p paste-buffer
bind c-p paste-buffer
按下 Ctrl-a 后的快捷鍵如下:
基礎
? ? ? ? ? ?? ? ? 獲取幫助信息
會話管理
? ? ? ? ? ?s ? ? 列出所有會話
? ? ? ? ? ?$ ? ? 重命名當前的會話
? ? ? ? ? ?d ? ? 斷開當前的會話
? ? ? ? ? ?
窗口管理
? ? ? ? ? ?c ? ? 創建一個新窗口
? ? ? ? ? ?, ? ? 重命名當前窗口
? ? ? ? ? ?w ? ? 列出所有窗口
? ? ? ? ? ?% ? ? 水平分割窗口
? ? ? ? ? ?" ? ? ?豎直分割窗口
? ? ? ? ? ?n ? ? 選擇下一個窗口
? ? ? ? ? ?p ? ? 選擇上一個窗口
? ? ? ? ? ?0~9 選擇0~9對應的窗口
? ? ? ? ? ?
窗格管理
? ? ? ? ? ?% ? ? ?創建一個水平窗格
? ? ? ? ? ?" ? ? ? 創建一個豎直窗格
? ? ? ? ? ?h ? ? ? 將光標移入左側的窗格
? ? ? ? ? ?j ? ? ? ?將光標移入下方的窗格
? ? ? ? ? ?l ? ? ? ?將光標移入右側的窗格
? ? ? ? ? ?k ? ? ? 將光標移入上方的窗格
? ? ? ? ? ?q ? ? ? 顯示窗格的編號
? ? ? ? ? ?o ? ? ? 在窗格間切換
? ? ? ? ? ?} ? ? ? ?與下一個窗格交換位置
? ? ? ? ? ?{ ? ? ? ?與上一個窗格交換位置
? ? ? ? ? ?! ? ? ? ?在新窗口中顯示當前窗格
? ? ? ? ? ?x ? ? ? 關閉當前窗格
? ? ? ? ? ?
其他
? ? ? ? ? ?t ? ? ? ?在當前窗格顯示時間
? ? ? ? ? ?
轉載于:https://blog.51cto.com/luochen2015/1770894
總結
以上是生活随笔為你收集整理的初识tmux---编译安装tmux的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Vysor:安卓手机放到电脑上用
- 下一篇: AVPlayer播放视频