tmux使用指南

前言

这两天我突然觉得,一个牛鼻的工程师需要摆脱鼠标的控制,全部用键盘完成自己想做的事情。但是我发现在终端里面使用键盘选中一些东西比较困难,所以问chagpt,他给我的解决办法是使用tmux。下面介绍一下tmux的基本使用

一. Tmux的基本组成

每个session生存在一个终端里面

二.基本语法

1. 创建和杀死一个session

(1) 创建

bash 复制代码
## yang1 和yang2 表示session的名称, -s 就是session的意思
tmux new -s yang1
tmux new -s yang2

(2) 查看是否创建成功

bash 复制代码
tmux ls

(3) 删除某个session

bash 复制代码
tmux kill-session -t yang1

(4) 进入退出某个session

bash 复制代码
##退出
ctrl + b   之后按d
##进入
tmux attach -t yang2
(5) 在内部删除某个session
bash 复制代码
exit

2. session内page的增加和删除

(1) 增加

bash 复制代码
ctrl + b   之后按住c

(2)切换

bash 复制代码
ctrl + b 之后按住对应标号

(3)删除

这个如果有pane先删除pane, 删除完pane就删除page,删除完page就删除session

bash 复制代码
ctrl +d

(4) 增加pane

bash 复制代码
### 增加一行
ctrl + b + "
### 增加一列
ctrl + b + %

(5) pane切换

bash 复制代码
### 方向键切换
ctrl + b  ↑ ↓ ← →
### 按照编号切换
ctrl + b q  可是显示各个pane的编号
趁着标号没消失之前,按住对应的数字,直接进入了

3. 复制模式

(1). 进入

bash 复制代码
ctrl + b [

(2).退出

bash 复制代码
q

(3). 翻页

bash 复制代码
alt + ↑ ↓   一次翻半页
↑ ↓  一次翻一行 

(4). 查找

bash 复制代码
ctrl + s  
之后输入要搜索的内容
之后ctrl +s 找下一个
ctrl + r 找上一个
按住enter 退出搜索

(5)选中复制

bash 复制代码
ctrl + space 
开始选中,这个选中可以用箭头,可以用ctrl + a , ctrl + e, 可以alt + 箭头
### 复制
alt + w
### 粘贴
ctrl + b  ]

(6)进入缓存区

bash 复制代码
ctrl + b :
输入show-buffer
之后ctrl + b :
输入 save-buffer ~/111.txt 
将缓存区内容保存



三、 将buffer和剪切板链接再一起

tmux复制的内容默认是在buffer里面,但是这样只能在终端里面粘贴。我们想让他能够粘贴到任何地方。

1. 配置文件

bash 复制代码
 vim ~/.tmux.conf
bash 复制代码
set -g set-clipboard on
setw -g mode-keys vi
bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "xclip -selection clipboard -in"
bash 复制代码
 tmux source-file ~/.tmux.conf

2. 相关指令

复制代码
ctrl + b [  进入copy模式
space  开始选择
y  结束选择,并退出copy

之后可以在剪切板以及buffer都可以找到复制的东西。

3. 选中变更

由于切换到了vi模式,翻页什么的快捷键发生变哈。

复制代码
半页上	Ctrl + u
半页下	Ctrl + d
到行首	0
到行尾	$
到第一行(顶部)	g
到最后一行(底部)	G
相关推荐
wj3055853786 小时前
课程 9:模型测试记录与 Prompt 策略
linux·人工智能·python·comfyui
星寂樱易李7 小时前
iperf3 + Python-- 网络带宽、网速、网络稳定性
开发语言·网络·python
abigriver7 小时前
打造 Linux 离线大模型级语音输入法:Whisper.cpp + 3090 显卡加速与 Rime 中英混输终极调优指南
linux·运维·whisper
wangqiaowq7 小时前
windows下nginx的安装
linux·服务器·前端
qingfeng154157 小时前
企业微信机器人开发:如何实现自动化与智能运营?
人工智能·python·机器人·自动化·企业微信
YYRAN_ZZU8 小时前
Petalinux新建自动脚本启动
linux
charlie1145141918 小时前
嵌入式Linux驱动开发pinctrl篇(1)——从寄存器到子系统:驱动演进之路
linux·运维·驱动开发
于小猿Sup8 小时前
VMware在Ubuntu22.04驱动Livox Mid360s
linux·c++·嵌入式硬件·自动驾驶
cen__y9 小时前
Linux12(Git01)
linux·运维·服务器·c语言·开发语言·git