tmux基本配置
tmux是什么?
tmux是一个终端复用工具。对于服务端开发的程序员或运维人员而言用处十分大。大大提高了工作效率。
下载
1
|
wget http://cznic.dl.sourceforge.net/project/tmux/tmux/tmux-1.9/tmux-1.9a.tar.gz
|
安装
1
2
3
4
5
6
|
yum install libevent-devel ncurses-devel
tar -zxvf tmux-1.9.tar.gz
cd tmux-1.9
./configure
make
make install
|
使用
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
tmux #开启tmux
tmux ls #显示已有tmux列表(C-b s)
tmux attach-session -t 数字 #选择tmux
C-b c 创建一个新的窗口
C-b n 切换到下一个窗口
C-b p 切换到上一个窗口
C-b l 最后一个窗口,和上一个窗口的概念不一样哟,谁试谁知道
c-b w 通过上下键选择当前窗口中打开的会话
C-b 数字 直接跳到你按的数字所在的窗口
C-b & 退出当前窗口
C-b d 临时断开会话 断开以后,还可以连上的哟:)
C-b " 分割出来一个窗口
C-b % 分割出来一个窗口
C-b o 在小窗口中切换
C-b (方向键)
C-b ! 关闭所有小窗口
C-b x 关闭当前光标处的小窗口
C-b t 钟表
C-b pageup/pagedo
|
实用的tmux配置
一个实用的tmux配置文件分享
- 存放路径~/.tmux.conf
- 配置贴出来很简单:
- 2024-10-16日更新配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
root@VM-8-10-ubuntu:/opt/blog/tools/vim_tools# cat ~/.tmux.conf
set -g default-terminal "tmux-256color"
set-option -a terminal-overrides '*256col*:Tc'
#支持 OSC52 ssh copy to local clipboard
set -g set-clipboard on
set-option allow-rename off
#for nvim
set-option -sg escape-time 10
set-option -g focus-events on
#-- base settings --#
set -g mode-keys vi
# prefix key (Ctrl+a)
set -g prefix ^a
unbind ^b
bind ^a send-prefix
#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插件配置文件分享
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
root@vpps:~/.tmux/plugins# cat ~/.tmux.conf
set -g default-terminal "screen-256color"
#-- base settings --#
set -g mode-keys vi
set-option -g escape-time 50
set-environment -g EDITOR nvim
# prefix key (Ctrl+a)
set -g prefix ^a
unbind ^b
bind a send-prefix
#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
unbind-key -Troot Enter
# List of plugins
set -g @plugin 'tmux-plugins/tpm'
#set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-open'
set -g @plugin 'tmux-plugins/tmux-urlview'
set -g @plugin 'tmux-plugins/tmux-yank'
set -g @plugin 'tmux-plugins/tmux-copycat'
set-option -g @urlview-command "nvim {}"
set -g @shell_mode 'vi'
# Other examples:
# set -g @plugin 'github_username/plugin_name'
# set -g @plugin 'github_username/plugin_name#branch'
# set -g @plugin 'git@github.com:user/plugin'
# set -g @plugin 'git@bitbucket.com:user/plugin'
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
run '~/.tmux/plugins/tpm/tpm'
run-shell '~/.tmux/plugins/tmux-urlview/urlview.tmux'
run-shell '~/.tmux/plugins/tmux-open/open.tmux'
run-shell '~/.tmux/plugins/tmux-yank/yank.tmux'
run-shell '~/.tmux/plugins/tmux-copycat/copycat.tmux'
|
- tmux无需过多配置,用vim的同学绑定hjkl就特别好用了。
更新配置文件
- 当修改了.tmux.conf后不想重启tmux,可以使用下面的命令更新配置
1
|
tmux source-file ~/.tmux.conf
|
解决vim在tmux中显示颜色异常
- 设置session保存路径为~/.config/session.tmux,防止默认保存在/tmp/tmux-0/default的session被删掉。
1
2
|
# vim ~/.bashrc
alias tmux="TERM=screen-256color-bce tmux -S ~/.config/session.tmux"
|
tmux中复制
tmux可以实现在终端中复制,方法很简单
1
2
3
4
|
Ctrl-a + [:进入复制模式
HJKL:选择需要复制的文本
Enter:复制并结束
Ctrl-a + ]:粘贴
|
tmux插件