Tmux 5分鐘掌握使用,運維效率蹭蹭漲

2021-10-01 10:26:41 字數 2718 閱讀 9114

tmux 是一款終端復用命令列工具,一般用於 terminal 的視窗管理。應付絕大多數視窗管理的需求。

首先進行安裝:

brew install tmux       # osx

pacman -s tmux # archlinux

apt-get install tmux # ubuntu

yum install tmux # centos

安裝好後就可以啟用乙個tmux session了:(通過tmux new -s myname可以指定session名)

tmux
在tmux session中,通過$可以重新命名當前session。其中指的是tmux的字首鍵,所有tmux快捷鍵都需要先按字首鍵。它的預設值是ctrl+b

c可以建立新的視窗(window),%水平分割視窗(形成兩個pane),"垂直分割視窗。退出當前session的快捷鍵是d。然後在bash中可以檢視當前的tmux服務中有哪些session:

tmux ls
然後根據session的名字可以再回去:

tmux a -t myname  (or at, or attach)
一般情況下 tmux 中所有的快捷鍵都需要和字首快捷鍵ctrl+b
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 還有許多其他的快捷鍵和命令,使用字首快捷鍵ctrl+b?可以檢視所有的快捷鍵列表
,該列表檢視為tmux copy 模式,該模式下可使用以下快捷鍵(無需加ctrl+b字首):

預設的ctrl+b,如果你覺得不好按可以調整為ctrl+a,只需要在配置檔案~/.tmux.conf中加入:

unbind ^b

set -g prefix 'c-a'

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動態載入配置而不是重啟,我們設乙個快捷鍵r來重新載入配置:

bind r source-file ~/.tmux.conf \; display-message "config reloaded"
注意,通過r重新載入配置並不等同於重啟,只是增量地執行了配置檔案中的所有命令而已。如果配置未生效,可以通過tmux kill-server來強行關閉tmux。

如果你想知道當前tmux的設定,可通過tmux show -g來檢視(該命令需要tmux正在執行)。 你可能會需要把這些設定匯出為檔案:

tmux show -g >> current.tmux.conf
參考鏈結

5分鐘掌握80 git操作

2 上傳本地 至遠端倉庫 3 檢視更改內容 4 撤銷未提交的修改 5 撤銷add後內容 6 檢視分支 7 建立分支 8 切換分支 9 合併分支,將分支a的 合併到分支b 10 刪除分支 11 刪除遠端倉庫檔案 12 檢視git歷史記錄 git log 如果想要日誌摘要 git log pretty ...

互動教程,讓你5分鐘掌握 Flexbox 布局模式

flexbox 布局模組目前是 w3c 候選標準,旨在提供乙個更有效的方式進行布局,對齊和為容器裡的專案分配空間,即使它們的大小是未知的或者動態的。這裡分享乙個基於 knockout.js 構建的互動教程,讓你5分鐘就掌握 flexbox 布局模式。真是好東西!13種非常動感的頁面載入動畫效果 你見...

至聯雲講解《5分鐘掌握Filecoin基礎知識》

filecoin儲存市場 filecoin storage market 儲存礦工的主要任務就是提供儲存空間和形成資料資源庫以此來獲得代幣獎勵,同時在驗證者要求驗證資料的時候提交儲存證明,如果未能及時提交儲存證明或者儲存證明出現問題,那麼將會接受系統的懲罰機制,即扣除交易前的抵押物。抵押 儲存礦工向...