[软件安装] tmux安装及相关事项

tmux安装及相关事项

tmux是一个终端复用工具,可以在单个终端窗口中同时运行多个终端会话。安装tmux可以提高工作效率,使命令行操作更加方便。

1. 安装tmux:

在Linux系统下,可以使用包管理器来安装tmux,比如在Ubuntu系统中,可以使用以下命令来安装:

sudo apt update
sudo apt install tmux

在macOS系统下,可以使用Homebrew来安装tmux:

brew update
brew install tmux

2. 启动tmux:

在终端中输入tmux即可启动,默认会在一个新窗口中打开一个tmux会话,你可以在其中执行命令。如果想退出tmux,可以使用Ctrl+b,然后按下d。

#启动新session:
$ tmux [new -s 会话名 -n 窗口名]

#恢复session:
$ tmux at [-t 会话名]

#列出所有sessions:
$ tmux ls

#关闭session:
$ tmux kill-session -t 会话名

#关闭整个tmux服务器:
$ tmux kill-server

3. Tmux 重要概念(https://www.cnblogs.com/zuoruining/p/11074367.html#2423136631)

使用 Tmux 的时候千万不要去背指令,所有的指令都可以在 .tmux.conf 配置文件中绑定自己顺手的快捷键,也可以配置开启鼠标。

这个是我的配置文件:https://github.com/zuorn/tmux.conf

在Tmux逻辑中,需要分清楚Server > Session > Window > Pane这个大小和层级顺序是极其重要的,直接关系到工作效率:

  • Server:是整个tmux的后台服务。有时候更改配置不生效,就要使用tmux kill-server来重启tmux。
  • Session:是tmux的所有会话。我之前就错把这个session当成窗口用,造成了很多不便里。一般只要保存一个session就足够了。
  • Window:相当于一个工作区,包含很多分屏,可以针对每种任务分一个Window。如下载一个Window,编程一个window。
  • Pane:是在Window里面的小分屏。最常用也最好用

4. tmux的常用快捷键:

Ctrl+b 是默认的tmux命令前缀,你需要先输入这个前缀,然后再输入其他快捷键才能执行相应的命令。以下是常用的tmux快捷键:

  • Ctrl+b d:分离当前的tmux会话(相当于挂起到后台)
  • Ctrl+b c:创建新的tmux窗口(注意:这个窗口的概念是相当于会话中的窗口,一个会话可以包含多个窗口,但是一个窗口只能归属到固定的一个会话)
  • Ctrl+b n:切换到下一个tmux窗口(只能在当前会话的窗口中切换)
  • Ctrl+b p:切换到上一个tmux窗口(同上)
  • Ctrl+b %:水平分割当前窗口(将当前的窗口进一步切分,因此概念上包含关系为:服务器>会话>窗口>切分窗口)
  • Ctrl+b ":垂直分割当前窗口(同上)
  • Ctrl+b x:关闭当前窗格
  • Ctrl+b [:进入复制模式
  • Ctrl+b ]:粘贴复制的文本

5. tmux更全面的快捷键

系统指令:

前缀 指令 描述
Ctrl+b ? 显示快捷键帮助文档
Ctrl+b d 断开当前会话
Ctrl+b D 选择要断开的会话
Ctrl+b Ctrl+z 挂起当前会话
Ctrl+b r 强制重载当前会话
Ctrl+b s 显示会话列表用于选择并切换
Ctrl+b : 进入命令行模式,此时可直接输入ls等命令
Ctrl+b [ 进入复制模式,按q退出
Ctrl+b ] 粘贴复制模式中复制的文本
Ctrl+b ~ 列出提示信息缓存

窗口(window)指令:

前缀 指令 描述
Ctrl+b c 新建窗口
Ctrl+b & 关闭当前窗口
Ctrl+b 0~9 切换到指定窗口
Ctrl+b p 切换到上一窗口
Ctrl+b n 切换到下一窗口
Ctrl+b w 打开窗口列表,用于且切换窗口
Ctrl+b , 重命名当前窗口
Ctrl+b . 修改当前窗口编号(适用于窗口重新排序)
Ctrl+b f 快速定位到窗口(输入关键字匹配窗口名称)

面板(pane)指令:

前缀 指令 描述
Ctrl+b " 当前面板上下一分为二,下侧新建面板
Ctrl+b % 当前面板左右一分为二,右侧新建面板
Ctrl+b x 关闭当前面板(关闭前需输入y or n确认)
Ctrl+b z 最大化当前面板,再重复一次按键后恢复正常(v1.8版本新增)
Ctrl+b ! 将当前面板移动到新的窗口打开(原窗口中存在两个及以上面板有效)
Ctrl+b ; 切换到最后一次使用的面板
Ctrl+b q 显示面板编号,在编号消失前输入对应的数字可切换到相应的面板
Ctrl+b { 向前置换当前面板
Ctrl+b } 向后置换当前面板
Ctrl+b Ctrl+o 顺时针旋转当前窗口中的所有面板
Ctrl+b 方向键 移动光标切换面板
Ctrl+b o 选择下一面板
Ctrl+b 空格键 在自带的面板布局中循环切换
Ctrl+b Alt+方向键 以5个单元格为单位调整当前面板边缘
Ctrl+b Ctrl+方向键 以1个单元格为单位调整当前面板边缘(Mac下
Ctrl+b t 显示时钟

5. tmux配置:

tmux的配置文件为~/.tmux.conf,你可以通过修改这个文件来改变tmux的默认配置。以下是一些常用的配置选项:

  • set-option -g prefix C-a:将tmux命令前缀改为Ctrl+a
  • setw -g mouse on:启用鼠标支持
  • set-option -g default-shell /bin/bash:设置默认shell为bash
  • set-option -g history-limit 5000:设置历史记录大小为5000行

初学者建议用熟练之后再进行配置,网络上有很多公开的配置,大家可以参考选配。

错误

提示:
/home/user/anaconda3/envs/virtualenvironment/lib/libtinfo.so.6: no version information available (required by -bash)
我出现这个错误是因为我在虚拟环境中,因此安装 ncurses 即可解决。
安装:

conda install -c conda-forge ncurses

reference

@misc{BibEntry2023Oct,
title = {{Tmux 配置xn–ih7c打造最适合自己的终端复用工具 - zuorn - 博客园}},
year = {2023},
month = oct,
urldate = {2023-10-23},
language = {chinese},
note = {[Online; accessed 23. Oct. 2023]},
url = {https://www.cnblogs.com/zuoruining/p/11074367.html}
}

你可能感兴趣的:(学习,ide)