新遇到的神器--Tmux
2026/7/28 15:10:49 网站建设 项目流程

又是一个之前从没听过的玩意,最近真的是疯狂长见识!之前三年明明都只是一个小前端,现在突然接触后端,看啥都新鲜,看啥都不会。前段时间项目提测,再测试环境的命令行里同时用了tmux,看的我一脸懵逼,赶紧请教了一下,然后百度了几个常用快捷键,算是知道咋回事儿了,今天周末,抓紧时间补一下,了解一波

参考资料:

  • 有可能是最简单的tmux入门教程
  • tmux简洁教程
  • 我在tmux中最不可少的配置: 用鼠标切换窗口/调节分屏大小
  • Tmux 快捷键 & 速查表

作用

首先tmux是做啥的捏?

tmux(terminal multiplexer)是什么呢?它能让你轻松地在多个任务之间切换、使任务在后台运行并且能够在不同的终端中恢复之前的任务。

tmux主要的功能有两点:

  • 终端利用,可以在一个terminal开启多个shell的session,这样就不需要vim一个terminal,命令又要需要一个,其他服务还要再开一个了。
  • 断线保证任务在后台继续执行,以及当你上线后保证原来打开的多个窗口与断线之前完全一样。以后就不用再使用screen了

安装及配置

Mac下使用brew install tmux来安装。

配置:

Tmux默认不支持鼠标滚动查看窗口中的前后内容。需要修改配置来支持。

// 新建文件 .tmux.conf 并编辑vim~/.tmux.conf// 写入以下# 开启鼠标模式set-option-g mouse on # 允许鼠标选择窗格 #set-g mouse-select-pane on ​ # 如果喜欢给窗口自定义命名,那么需要关闭窗口的自动命名set-option-g allow-rename off ​ # 如果对 vim 比较熟悉,可以将 copy mode 的快捷键换成 vi 模式set-window-option-g mode-keys vi// 然后进入tmux// 执行快捷键ctrl+b(松手)// 即可生效

此时,使用快捷键ctrl+b (松手) %分窗口之后,就可以使用鼠标来选则窗口了。

场景

我在工作中遇到的场景,是这样的:

通过ssh连接远程测试机时,我需要在测试机中同时执行前端的yarn start和 后端node的yarn dev,但我进入前端目录执行之后,就没办法再退出来cd到后端目录了。这时候就需要tmux,相当于在测试机中创建多个: 会话(session)、窗口(window)、窗格(Pane),我可以在不用的窗口cd到不同的目录下,去执行相应的任务。同时我可以很方便的使用tmux来在任务之间切换。

基本应用

启动tmux

安装后在命令行输入tmux就启动了,看到只有一个窗口,窗口下方会有基本状态信息。
tmux的使用可以完全靠快捷键,快捷键以前缀快捷键+快捷键构成,默认的前缀(prefix)快捷键是ctrl-b,用法是按下Ctrl-b,放开后再按下相应的快键即可,例如查看tmux会话的快捷键是s,可以按下ctrl-b,放开再按s,即可查看当前的所有会话。

针对我的使用常见,其实只用了几个非常简单的命令:

// ssh连接测试机sshxxxxx // 查看当前所有会话 tmuxls// 启用新会话 tmux[new -s 会话名 -n 窗口名]// 关闭会话 tmux kill-session -t 会话名 // 进入某一个会话 tmux at[-t 会话名]// 在会话中进行了需要的操作后,退出会话,使用快捷键: ctrl+b(松手)d

更多详细的快捷键,可以参考上边的参考资料哦。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询