好用工具分享 | tmux 终端会话分离工具

目录

[1 tmux的安装](#1 tmux的安装)

[2 tmux的基本操作](#2 tmux的基本操作)

[2.1 启动与退出](#2.1 启动与退出)

[2.2 分离会话](#2.2 分离会话)

[2.3 查看会话](#2.3 查看会话)

[2.4 重接会话](#2.4 重接会话)

[2.5 杀死会话](#2.5 杀死会话)

[2.6 切换会话](#2.6 切换会话)


tmux是一个 terminal multiplexer(终端复用器),它可以启动一系列终端会话。

我们使用命令行时,打开一个终端窗口,会话开始,执行某些命令如npm run dev,关闭此终端窗口,会话结束,npm run dev服务会话随之被关闭。有时我们希望我们运行的服务如npm run dev 或者一些cd命令等,被保留,而不是关闭窗口再打开后,重新手动执行。tmux的主要用途就在于此。

它解绑了会话和终端窗口。关闭终端窗口再打开,会话并不终止,而是继续运行在执行。将会话与终端窗后彻底分离。

1 tmux的安装

安装方法一

复制代码
git clone https://github.com/tmux/tmux.git
cd tmux
sh autogen.sh
./configure && make

安装方法二

复制代码
# Ubuntu 或 Debian
$ sudo apt-get install tmux
​
# CentOS 或 Fedora
$ sudo yum install tmux
​
# Mac
$ brew install tmux

2 tmux的基本操作

2.1 启动与退出

讲解使用之前,我们需要先搞清楚窗口与会话的概念。

窗口:其实就是我们终端打开的一个tab,如

会话:终端里面所操作的命令、启动的服务,为会话

正常情况下,如我们关闭窗口,窗口创建的一些会话也会结束

复制代码
# 启动tmux
$ tmux
​
# 退出
$ exit 或 Ctrl+D

启动tmux后,底部0 表示第0个tmux伪窗口,再启动一个tmux伪窗口,则为1,依次递增。

注意这里的exit是彻底关闭这个tmux的操作!!!和分离是有区别的

2.2 分离会话

执行tmux detach,可见退出了tmux伪窗口

复制代码
# 分离会话
$ tmux detach

2.3 查看会话

执行tmux ls可看到当前所有的tmux伪窗口。

2.4 重接会话

通过tmux detach关闭tmux伪窗口后,希望再次进入某一个会话窗口

如果是exit退出之后,则不可以再次进入

复制代码
# 重接会话 使用伪窗口编号
$ tmux attach -t 0
​
# 重接会话 使用伪窗口名称
$ tmux attach -t xiaoqi

2.5 杀死会话

有时候我们想彻底关闭某个会话,不想让其再执行,怎么操作?

和exit的方法的效果其实一样

复制代码
# 使用会话编号
$ tmux kill-session -t 0
​
# 使用会话名称
$ tmux kill-session -t <name>

2.6 切换会话

复制代码
# 使用会话编号
$ tmux switch -t 0
​
# 使用会话名称
$ tmux switch -t <session-name>
相关推荐
道尔柯南17 分钟前
【Linux】线程概念与控制
linux
wuminyu36 分钟前
Markword在紧凑对象头上的实现原理剖析
java·linux·c语言·jvm·c++
酸菜。1 小时前
DW_apb_wdt总结
linux
虚无的纽扣1 小时前
【Linux】一篇文章带你吃透进程控制:fork、wait、exit到底在做什么
linux·ubuntu
raindayinrain1 小时前
Linux 网络编程--套接字选项
linux·网络·套接字选项
金士顿1 小时前
ASP.NET Core BackgroundService 深度解析:设备后台任务到底应该怎么设计
linux·嵌入式·asp.net core·arm64
j7~2 小时前
【Linux网络加餐课】(篇八)网络版计算器(终篇):守护进程、标准 IO 重定向与部署打包
linux·运维·网络编程·tcp·守护进程·io重定向·部署打包
Escalating_xu2 小时前
【Linux 多线程】自旋锁:从 atomic_flag 原子操作到 pthread_spin_* 与高竞争优化
linux·系统架构
kkkkkkkkkk_Z2 小时前
学嵌入式和Linux应用编程|学习日记:深入理解TCP协议与网络编程实战
linux·笔记·学习
kaoa0002 小时前
Linux入门攻坚——90、Hadoop-2-MapReduce计算框架及Hadoop生态系统概览
linux·hadoop·mapreduce