资料:
https://www.cnblogs.com/wangqiguo/p/8905081.html
sudo apt-get install tmux
tmux会话部分:
-
ctrl+b d 退出会话 (字母d是detach的缩写)
我们经常会用到tmux的组合键,一般的组合键中都会加一个前缀也就是 ctrl+b
tmux ls 终端环境查看会话session列表
会话环境中运行 ctrl+b s
可以看到在列出的列表中,只有1行,说明只有一个session,
其中左边的session1表示该session的名字,中间2 windows说明该session1会话中有2个window,
右边表示该会话创建的时间。
如果该机器中有多个tmux会话在后台运行,那么这里会列出多行。因为tmux会话在后台运行
ps -ef | grep tmux tmux的进程在后台运行来维持这些会话,exp : tmux new -s session1
-
ctrl+b s 来获取当前linux机器上tmux所有的后台会话列表
session会话名 window 会话窗口数量 attached表示当前会话
此时可以通过方向键选择会话并回车,在会话间进行切换。 -
tmux new -s 命令创建一个tmux会话并进入该会话
-
tmux a -t session1 从终端环境进入会话
如果在终端环境中运行 tmux ls 查看有tmux会话正在后台运行,如何进入到该正在后台中运行的会话呢,通过运行 tmux a -t session1 即可进入到该已存在的会话 session1 中。其中a字母是attach的头字母,表示附加, -t 指定要进入已存在的会话名,如果不存在则会报告 session not found 错误。 -
tmux kill-session -t session1 销毁会话
在会话环境中运行ctrl+b :
(注意按组合键之后再按一个冒号键),状态栏变成黄色之后提示我们可以在会话环境中输入命令,此时输入 kill-session -t session1 回车即可。其中session1是要销毁的会话名。 -
tmux rename -t old_session_name new_session_name 重命名会话
ctrl + b $ 重命名会话 (在会话环境中)
tmux窗口部分:
- 一个tmux的会话中可以有多个窗口(window),每个窗口又可以分割成多个pane(窗格)。我们工作的最小单位其实是窗格。默认情况下在一个window中,只有一个大窗格,占满整个窗口区域。我们在这个区域工作。
-
新创建的会话中会默认创建一个窗口,该窗口名字一般是登陆终端的用户名@主机名,我们可以通过 crtl+b , (组合键之后按一个逗号)来修改当前窗口的名字,如上图所示的窗口名字myserver1就是修改之后的名字。该名字后面有一个*号,表示该窗口是活动窗口(键盘输入会输入到该窗口中)
-
ctrl+b c 创建之后会多出一个窗口如下图所示:
o_create_window.png -
切换window
在同一个会话的多个窗口之间可以通过如下快捷键进行切换:
ctrl+b p (previous的首字母) 切换到上一个window。
ctrl+b n (next的首字母) 切换到下一个window。
ctrl+b 0 切换到0号window,依次类推,可换成任意窗口序号
ctrl+b w (windows的首字母) 列出当前session所有window,通过上、下键切换窗口
ctrl+b l (字母L的小写)相邻的window切换
- ctrl+b & 关闭当前window
ctrl+b & 关闭当前window,会给出提示是否关闭当前窗口,按下y确认即可。
tmux窗格部分:
-
tmux的一个窗口可以被分成多个pane(窗格),可以做出分屏的效果。
-
ctrl+b % 垂直分屏(组合键之后按一个百分号),用一条垂线把当前窗口分成左右两屏。
-
ctrl+b " 水平分屏(组合键之后按一个双引号),用一条水平线把当前窗口分成上下两屏。
-
分屏之后光标停留在哪个pane上,表示该pane是活动的,另外一般情况下当前pane会被绿色的线条围起来。一般分屏之后当前窗口名字会重置为默认窗口名字。通过多次分屏操作,我们可以得到各种样子的分屏效果,例如下图显示的是一次垂直分屏之后,在右边pane中再次水平分屏的效果:
o_pane_multi.png -
切换pane
ctrl+b o 依次切换当前窗口下的各个pane。
ctrl+b Up|Down|Left|Right 根据按箭方向选择切换到某个pane。
ctrl+b Space (空格键) 对当前窗口下的所有pane重新排列布局,每按一次,换一种样式。
ctrl+b z 最大化当前pane。再按一次后恢复。
- 关闭pane
ctrl+b x 关闭当前使用中的pane,操作之后会给出是否关闭的提示,按y确认即关闭。
或者 直接输入: exit - ctrl +b z 最大化当前pane
如果想, 恢复再按一次
tmux window中的历史输出查看
- 在tmux里面,因为每个窗口(tmux window)的历史内容已经被tmux接管了,当我们在每个tmux的window之间进行来回切换,来回操作,那么我们没有办法看到一个window里面屏幕上的历史输出。没办法使用鼠标滚动(例如在SecureCRT中)查看之前的内容,
- 改用C-b [ 进入copy mode,然后就可以用PgUp/PgDn/光标来浏览历史输出了,按q退出。C-b PgUp 也可以直接进入coy mode.
网友评论