当前位置: 首页 > article >正文

tmux 介绍与使用

tmux有什么用

1.关闭终端时,在终端运行着的程序不会一起被关闭。

比如,我在终端命令行执行htop。当我关闭这个终端时,htop进程也随着这个终端的关闭而结束。我在终端运行着一个程序,它应该一直运行着。我一不小心把终端关闭了,这个程序也随之停止了。tmux就是用来解决这个问题的。即终端关闭,在终端运行着的程序不会关闭。

2.终端分屏

我希望一个终端同时显示htop,还有我的程序。就可以用tmux实现。tmux可以把屏幕无限拆分。

tmux 概念

1. 会话 session

我们与系统的交互上下文就是会话。在没有tmux的时候,每次打开终端就建立一个新的会话,关闭这个终端时,会话结束。如果关闭终端时,会话中还有正在运行的进程,那么这个进程也关闭。没有tmux的时候,终端-会话-会话中的进程生命周期绑定。终端死亡意味着会话和会话中的进程死亡。
tmux 可以使得终端与会话隔离。一个终端可以有多个会话,可以切换会话。终端关闭后,会话不会结束。重新打开终端,可以选择回到之前的会话中,或者开启一次新的会话。

2. 窗口

窗口是用来显示会话的。一个窗口一个时间内只显示一个会话。会话与窗口的关系就像主机与显示屏。一个会话可以由多个窗口显示(一台主机可以连接多个显示屏)。窗口与终端的生命周期绑定。一个会话可以同时运行多个进程(主机可以运行多个程序),这些进程可以由多个窗口显示,互不占用彼此的显示空间。窗口死亡时,会话不会结束(显示屏坏了,主机不会关机,换个显示屏就能接着使用)

3.窗格

窗格是窗口的分屏。把窗口分成一个个格子,可以在每个格子显示一个程序,窗格间显示的内容互不干扰。

tmux使用

tmux 有命令和快捷键。
tmux 快捷键,都是先按ctrl+b。然后松开,然后再输入指令。
先按ctrl+b,告诉tmux现在我要控制你。后面跟着的输入就是控制内容。

未处于tmux会话中

终端输入 tmux 新建并加入到新建的会话。
tmux ls 查看还未关闭的会话
tmux new -s 会话名 新家一个会话,命名为会话名,并加入到新建的会话。
tmux kill-session -t 会话名 删除会话
tmux attach -t 会话名 加入到会话中。

处于tmux会话中

ctrl+b , d (先按ctrl+b。然后松开,然后再输入d) 离开当前会话
ctrl+b, s 切换到另一个会话中

ctrl+b,? 打印快捷键 按q退出显示的快捷键菜单。
ctrl+b,c 创建一个新的窗口
ctrl+b,n 切换到下一个窗口
ctrl+b,1-9 切换到标号为指定数字的窗口(下方有窗口编号)
在这里插入图片描述
ctrl+b,& 删除当前窗口
ctrl+b," (先按ctrl+b。然后松开,然后再输入双引号,注意是双引号(shift+‘)而不是’)垂直分屏。
ctrl+b,% (注意是%,不是5)水平分屏
ctrl+b,方向键 移动窗格焦点
ctrl+b,x 删除焦点窗格

tmux 配置文件

它可以定制化tmux

创建

在用户主目录下创建.tmux.conf文件

vim ~/.tmux.conf

比较常用的配置

set -g mouse on
这个开启鼠标功能。可以用鼠标选中窗格,可以拖动改变窗格大小。
可以长按鼠标右键进入右键菜单。


http://www.kler.cn/a/519383.html

相关文章:

  • js手撕 | 使用css画一个三角形 使用js修改元素样式 驼峰格式与“-”格式相互转化
  • 在Qt中实现点击一个界面上的按钮弹窗到另一个界面
  • 2024年度总结(具身智能赛道,欢迎交流)
  • 【图文详解】lnmp架构搭建Discuz论坛
  • appium自动化环境搭建
  • nacos(基于docker最详细安装)
  • 开源的仓库管理系统-ModernWMS
  • 水利水电安全员B证考试真题(含答案)
  • Android AutoMotive—CarPowerManagementService
  • 使用shell脚本修改linux静态网络IP、网关和hosts文件
  • PSD是什么图像格式?如何把PSD转为JPG格式?
  • zookeeper的介绍和简单使用
  • Plesk 2个安全功能介绍
  • 2025年01月25日Github流行趋势
  • 基于物联网的风机故障检测装置的设计与实现
  • OpenHarmony 5.0.2 Release来了!
  • (Halcon)轮廓等分切割(项目分析)
  • 性能优化案例:通过合理设置spark.storage.memoryFraction参数的值来优化PySpark程序的性能
  • Flutter_学习记录_Tab的简单Demo~真的很简单
  • 【开源免费】基于SpringBoot+Vue.JS智慧图书管理系统(JAVA毕业设计)
  • 【DB】Oracle存储过程
  • doris:MySQL Load
  • 【2025年数学建模美赛E题】(农业生态系统)完整解析+模型代码+论文
  • Vue.js 路由懒加载
  • 【STM32项目实战系列】了解ST系列MCU外设:定时器TIM
  • HTML-新浪新闻-实现标题-排版