北小七 - Linux
type: channel
link: http://blog.b-77.cn/index.php/category/linux/
items: shell后台运行和终端会话复用 | Tmux

shell后台运行和终端会话复用 | Tmux
type: item
date: 2024-07-10T17:16:00+08:00
description: 有时候有需求ssh连接到远程服务器后跑shell脚本，ssh断开后保持后台执行，并且重新连接后查看输出，tmux可以很好的解决Tmux 介绍Tmux（Terminal Multiplexer）是一个终端复用器，可以在一个单一终端会话中同时运行多个终端会话。它有以下几个主要功能和作用：会话管理：Tmux允许用户在一个终端窗口中创建、管理和切换多个会话。这使得用户可以在一个窗口中运行多个命令行程序，而不需要打开多个终端窗口。分屏功能：Tmux可以在一个终端窗口内将屏幕分成多个窗格，每个窗格可以独立运行不同的命令。这对同时监控多个进程或日志非常有用。持久化会话：当用户断开连接（例如通过SSH连接的终端会话中断）时，Tmux会话仍然保持运行状态。用户可以重新连接并恢复会话，而无需重新启动正在运行的程序。共享会话：多个用户可以连接到同一个Tmux会话，这对于协作调试和演示非常有帮助。自定义与脚本：Tmux提供了丰富的配置选项，可以通过配置文件自定义其行为。此外，可以使用Tmux脚本来自动化某些任务。Tmux 使用启动Tmux会话:tmux创建并命名一个新会话:tmux new -s mysession列出所有会话:tmux ls重新连接到一个会话:tmux attach -t mysession在当前会话中创建一个新窗口:ctrl + b, c在当前窗口中拆分为上下两个窗格:ctrl + b, "在当前窗口中拆分为左右两个窗格:ctrl + b, %在窗格之间切换:ctrl + b, 箭头键