使用的初衷:
在Linux终端下,由于session(会话)和windows(窗口)是绑定一起的,你打开一个终端的黑窗口就是打开一个会话,如果你关闭了黑窗口,那么你所运行的程序也会关闭。我们在使用SSH远程连接时,希望关闭连接之后,程序仍然运行,等我们下次连接,进入这个会话,就可以继续看到程序的运行状态。因此,我们需要学会如何使用tmux这个工具。
这三个名词是使用tmux之前,需要了解的。这里自己画了一张图,可以更清晰的解释三者之间的关系。
图中的意思就是说我们可以创建多个session,一个session可以创建多个窗口,而一个窗口可以打开多个窗格,每个窗格都可以做不同的事情,比如:安装软件,运行程序等等。
sudo apt-get install tmux 安装
ps aux | grep tmux 查看后台是否启动server进程
tmux 进入tmux中
exit 退出
tmux new -s "session name" 创建session
tmux ls 查看session列表
tmux attach -t "session name" 重新接入会话(已经分离过的)
tmux kill-session -t "session name" 杀死会话
tmux switch -t "session name" 切换会话
tmux detach 分离会话
tmux rename-session -t "old name" "new name"
Ctrl+b d 分离当前会话
Ctrl+b s 列出所有会话
Ctrl+b $ 重命名当前会话
tmux new-window 新建一个窗口
tmux new-window -n "windowname" 新建一个指定名称的窗口
tmux select-window -t "window number" 切换到指定编号的窗口
tmux select-window -t "window name" 切换到指定名称的窗口
tmux rename-window "new name" 重命名窗口
Ctrl+b c 创建一个新的窗口,状态栏会显示多个窗口的信息
Ctrl+b p 切换到上一个窗口(按照状态栏上的顺序)
Ctrl+b n 切换到下一个窗口
Ctrl+b 切换到指定编号的窗口
Ctrl+b w 从列表中选择窗口,按上下键进行选择
Ctrl+b , 窗口重命名
tmux split-window 划分上下两个窗格
tmux split-window -h 划分左右两个窗格
tmux select-pane -U 光标切换到上方窗格
tmux select-pane -D 光标切换到下方窗格
tmux select-pane -L 光标切换到左边窗格
tmux select-pane -R 光标切换到右边窗格
tmux swap-pane -U 当前窗格上移
tmux swap-pane -D 当前窗格下移
Ctrl+b % 划分左右两个窗格
Ctrl+b " 划分上下两个窗格
Ctrl+b ; 光标切换到上一个窗格
Ctrl+b o 光标切换到下一个窗格
Ctrl+b x 关闭当前窗格
Ctrl+b ! 将当前窗格拆分为一个独立窗口
Ctrl+b z 将当前窗格全屏显示,再使用一次会变回原来的大小
Ctrl+b q 显示窗格编号
Ctrl+b ↑↓→← 切换窗格
在窗格中输入:exit 也可以结束这个窗格
tmux list-keys 列出所有快捷键,及其对应的 Tmux 命令
tmux list-commands 列出所有 Tmux 命令及其参数
tmux info 列出当前所有 Tmux 会话的信息
tmux source-file ~/.tmux.conf
1.新建会话:tmux new -s session_1
2.在tmux窗口运行所需的程序
3.输入:tmux detach 将会话分离
4.下次使用时,重新连接到会话:tmux attach -t session_1
希望对各位朋友有所帮助,如果有错误的地方,请见谅。
如果需要这篇文章的pdf版本,请在公众号“冬天的李同学”中回复“2023.11.14”
1.https://blog.csdn.net/CSSDCC/article/details/121231906
2.https://www.bilibili.com/video/BV1ML411h7tF?t=683.4
3.https://www.bilibili.com/video/BV1da4y1p7e1?t=240.0
4.https://www.ruanyifeng.com/blog/2019/10/tmux.html