配置文件

当使用tmux快捷键时,要先按下前缀再按下快捷键。默认情况下tmux的前缀是组合键Ctrl-b。如果想要修改这个前缀,可以通过修改配置文件~/.tmux.conf

unbind C-b
set -g prefix C-a

在tmux默认设置中窗口切换比较麻烦,要用光标键,我们可以通过在配置文件里映射来修改快捷键。

#up
bind-key k select-pane -U
#down
bind-key j select-pane -D
#left
bind-key h select-pane -L
#right
bind-key l select-pane -R

用鼠标操作tmux(以下关于mouse的操作适用2.0及以下版本)

# 鼠标回滚屏幕 可以简写成setw
set-window-option -g mode-mouse on
# 设置复制模式中的键盘布局,可以设成vi模式 也可以是emacs模式
setw -g mode-keys vi
# 用鼠标拖动调节pane的大小
setw -g mouse-resize-pane on
# 用鼠标点击pane来激活该pane
setw -g mouse-select-pane on
# 用鼠标点击来切换活动window
setw -g mouse-select-window on

tmux 2.1版本可以用一条语句来代替关于鼠标的配置

set -g mouse on

其中最后一条语句会修改prekey l 的原有功能(选择最后一个窗口),可以通过下面语句重新映射:

#select last window
bind-key C-l select-window -l

配置完后用source-file使配置生效

"先进入tmux的命令行模式"
Ctrl-b : 
"在命令行模式下用source-file命令重新加载配置文件"
source-file ~/.tmux.conf

Shell命令

tmux new -s session #
tmux new -s session -d #在后台建立会话
tmux ls #列出会话
tmux attach -t session #进入某个会话

内部命令

Ctrl+b 激活控制台;此时以下按键生效

会话操作

? 列出所有快捷键;按q返回
d 脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话
D 选择要脱离的会话;在同时开启了多个会话时使用
Ctrl+z 挂起当前会话
r 强制重绘未脱离的会话
s 选择并切换会话;在同时开启了多个会话时使用
:(冒号) 进入命令行模式;此时可以输入支持的命令,例如kill-server可以关闭服务器,source-file可以使能配置文件
[ 进入复制模式;此时的操作与vi/emacs相同,按q/Esc退出
~ 列出提示信息缓存;其中包含了之前tmux返回的各种提示信息

窗口操作

c 创建新窗口
& 关闭当前窗口
数字键 切换至指定窗口
p 切换至上一窗口
n 切换至下一窗口
l 在前后两个窗口间互相切换
w 通过窗口列表切换窗口
, 重命名当前窗口;这样便于识别
. 修改当前窗口编号;相当于窗口重新排序
f 在所有窗口中查找指定文本

面板操作

” 将当前面板平分为上下两块
% 将当前面板平分为左右两块
x 关闭当前面板
! 将当前面板置于新窗口;即新建一个窗口,其中仅包含当前面板
Ctrl+方向键 以1个单元格为单位移动边缘以调整当前面板大小
Alt+方向键 以5个单元格为单位移动边缘以调整当前面板大小
Space 在预置的面板布局中循环切换;依次包括even-horizontal、even-vertical、main-horizontal、main-vertical、tiled
q 显示面板编号
o 在当前窗口中选择下一面板
方向键 移动光标以选择面板
{ 向前置换当前面板
} 向后置换当前面板
Alt+o 逆时针旋转当前窗口的面板
Ctrl+o 顺时针旋转当前窗口的面板

进入tmux