【linux经典工具】作为一个合格的开发人员怎能不会tmux

做过服务器开发的同学,一定会经常登录服务器,且在服务器上做很多操作,那么tmux是必不可少的使用工具。

tmux是一个强大的终端复用器,允许用户在一个终端窗口中运行多个会话。以下是 tmux 的详细使用指南,涵盖基本操作和一些高级功能。

1. 安装 tmux

在大多数 Linux 发行版中,可以通过包管理器安装 tmux:

Ubuntu/Debian

css 复制代码
sudo apt install tmux

# CentOS/RHEL

css 复制代码
sudo yum install tmux

# Arch Linux

css 复制代码
sudo pacman -S tmux

2. 启动 tmux

在终端中输入以下命令启动一个新的 tmux 会话:

css 复制代码
tmux

如果希望为会话命名,可以使用:

css 复制代码
tmux new -s mysession

3. tmux 基本操作

分离会话:按 Ctrl + b 后再按 d,可以将会话分离,回到普通终端。

列出会话:使用以下命令查看当前所有会话:

css 复制代码
tmux ls

重新连接会话:使用以下命令连接到分离的会话:

css 复制代码
tmux attach -t mysession

杀死会话:可以通过以下命令杀死当前会话:

css 复制代码
exit

或者在其他会话中使用:

css 复制代码
tmux kill-session -t mysession

4. 窗格操作

tmux 允许在同一会话中创建多个窗格(pane)。

垂直分割窗格:按 Ctrl + b 后再按 %。

水平分割窗格:按 Ctrl + b 后再按 "。

切换窗格:按 Ctrl + b 后再按方向键(上下左右)。

调整窗格大小:按 Ctrl + b 后按住 Ctrl 并使用方向键。

5. 会话管理

创建新窗口:按 Ctrl + b 后再按 c 创建一个新窗口。

切换窗口:按 Ctrl + b 后再按 n(下一个)或 p(上一个)切换窗口。

列出窗口:按 Ctrl + b 后再按 w 显示窗口列表。

关闭窗口:在窗口中输入 exit 或按 Ctrl + d。

6. 复制和粘贴

tmux 具有内置的复制和粘贴功能。

  • 进入复制模式:按 Ctrl + b 后再按 [。
  • 选择文本:使用方向键移动光标,按空格键开始选择,移动光标- 选择文本。
  • 复制文本:选择完成后,按 Enter 键复制。
  • 粘贴文本:按 Ctrl + b 后再按 ] 粘贴。

7. tmux 配置

tmux 可以通过配置文件自定义,通常是 ~/.tmux.conf。一些常用的配置选项:

css 复制代码
# 设置前缀键为 Ctrl + a
unbind C-b
set-option -g prefix C-a
bind a send-prefix
# 使滚动更流畅
set -g mouse on

8. 常用命令总结

tmux new -s session_name:创建新会话并命名。

tmux ls:列出所有会话。

tmux attach -t session_name:连接到指定会话。

tmux kill-session -t session_name:杀死指定会话。

Ctrl + b d:分离当前会话。

Ctrl + b %:垂直分割窗格。

Ctrl + b ":水平分割窗格。

Ctrl + b o:切换窗格。

Ctrl + b c:创建新窗口。

Ctrl + b n:切换到下一个窗口。

Ctrl + b p:切换到上一个窗口。

9. 常见问题

  • tmux 不响应:确保你没有误按了其他组合键,使用 Ctrl + b 作为前缀。
  • 终端显示混乱:在分离后,可以尝试重新连接会话,如果问题仍然存在,可以重启 tmux。

10. 扩展功能

tmux 还有许多高级功能,例如:

  • 自定义状态栏。
  • 使用插件管理器(如 TPM) 来安装插件,增强 tmux 功能。

结论

tmux 是一个非常灵活的工具,能够提高终端工作效率。通过熟悉其基本操作和配置,您可以在 Linux 环境中更加高效地管理多个任务和会话。

相关推荐
864记忆几秒前
车辆视频检测器linux版对于密码中包含敏感字符的处理方法
linux·qt
电星托马斯2 分钟前
Linux的那些基础常用命令汇总
linux·运维·服务器·数据库·笔记·centos·debian
水木姚姚9 分钟前
vscode+wsl 运行编译 c++
linux·windows·vscode·ubuntu·wsl·c/c++
鸡精拌饭15 分钟前
Ubuntu小练习
linux·运维·ubuntu
cosX+sinY1 小时前
ubuntu 20.04 复现 LVI-SAM
linux·ubuntu·机器人·bash
冬瓜3121 小时前
物联网外设管理服务平台
linux·运维·驱动开发
wd5205211 小时前
常用环境部署(二十六)——Centos搭建MQTT服务端EMQX
linux·运维·centos
程序员JerrySUN1 小时前
驱动开发硬核特训 · Day 1
java·linux·运维·开发语言·c++·驱动开发
愚润求学1 小时前
【Linux】Git的简单使用
linux·服务器·git