tmux
功能
- 分屏
- 允许断开 Terminal 连接后,继续运行进程。
一个 tmux 可以包含多个 session 可以包含多个window,一个 session 可以包含多个 window,一个 window 可以包含多个 pane。(一般一个 session 包含 一个 window,然后一个 window 包含多个 pane )
实例:
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/1406c8fa5942e31f509c997feccdd50b.png)
操作
tmux
:新建一个 session,其中包含一个 window,window 包含一个 pane,pane 里打开了一个 shell 对话框。Ctrl + a 后 %
:将当前 pane 左右平分成两个 pane。Ctrl + a 后 "
:将当前 pane 上下平分成两个 pane。Ctrl + d
:关闭当前 pane。如果当前 pane 均已关闭,则关闭当前 window,若当前 window 均已关闭,则自动关闭 session。鼠标点击
:选择pane。鼠标拖动 pane 之间的分割线,可以调整 pane 之间分割线的位置。Ctrl + a 同时方向键
:可以调整 pane 之间分割线的位置。Ctrl + a 后 z
:将当前 pane 全屏 / 取消全屏。Ctrl + a 后 d
:挂起当前 session。tmux a
:打开之前挂起的 session 。Ctrl + a 后 s
:选择其他 session:- ↑:选择上一项 session/window/pane
- ↓:选择下一项 session/window/pane
- ←:闭合向前项 session/window
- →:展开当前项 session/window
Ctrl + a 后 c
:在当前 session 创建一个新的 windowCtrl + a 后 w
:选择其他的 window 操作和Ctrl + a 后 s
一致。Ctril + a 后 PageUp
: 翻阅当前 pane 的内容。- tmux 中选中文本:需要按住
shift
键 - tmux 中 复制 / 粘贴文本的通用方式:
- 按下
Ctrl + a 后 [
- 用鼠标选中文本,被选中的文本会被自动复制到 tmux 的剪贴板
- 按下
Ctrl + a 后 ]
:会将剪贴板的内容粘贴到光标处
vim
功能
- 命令行模式下的文本编辑器。
- 根据文件扩展名自动判别编程语言,支持代码缩进,代码高亮等功能。
- 使用方式:
vim filename
如果已有该文件,则打开它。
如果没有该文件,则打开一个新的文件,并命名为filename
。
模式
- 一般命令模式
默认模式,命令输入方式:按不同字符即可进行不同操作。 - 编辑模式
在一般命令模式里按下i
,会进入编辑模式。
按下 ESC 会退出编辑模式,返回到一般命令模式。 - 命令行模式
在一般命令模式里按下: / ?
三个字母中的人员和一个,会进入命令行模式,命令行在最下面。
操作
i
:进入编辑模式ESC
:进入一般命令模式h 或 ←
:光标向左移动一个字符j 或 ↓
:光标向下移动一个字符k 或 ↑
:光标向上移动一个字符l 或 →
:光标向右移动一个字符n + 空格
:n
表示一个数字,按下数字再空格,光标会向右移动本行的n
个字符。0 或 Home 键
:光标移动到本行开头$ 或 End键
:光标移动到本行末尾G
:光标移动到最后一行:n 或 nG
:n
为数字,光标移动到第n
行gg
:光标移动到第一行,相当于1G
n + 回车
:n
为数字,光标向下移动n
行/word
:向光标之下寻找第一个值为word
的字符串?word
:向光标之上寻找第一个值为word
的字符串n
:重复前一个查找操作N
:反向重复前一个查找操作:n1,n2s/word1/word2/g
:在n1
和n2
行之间寻找word1
这个字符串,并将该字符串替换为word2
:1,$s/word1/word2/g
:将全文的word1
替换为word2
:1,$s/word1/word2/gc
:将全文的word1
替换为word2
并逐个确认是否替换v
:选中文本d
:删除当前选中文本dd
:删除当前行y
:复制选中文本yy
:复制当前行p
:将复制的数据在光标的下一行/下一个位置粘贴u
:撤销Ctrl + r
:取消撤销>
:将选中的文本整体向右缩进一次<
:将选中的文本整体向左缩进一次:w
:保存!w
:强制保存:q
:退出:q!
:强制退出:set paste
:设置成粘贴模式,取消代码自动缩进:set nopaste
:取消粘贴模式,开启代码自动缩进:set nu
:显示行号:set nonu
:隐藏行号gg=G
:将全文代码格式化:noh
:关闭查找关键词高亮Ctrl + q
:当 vim 卡死时,可以取消当前正在执行的命令
异常处理
每次用 vim 编辑文件时,会自动创建一个.filename.swp
的临时文件。如果打开某个文件,该文件的swp
已经存在时,则会报错,此时解决办法有两种:
- 找到正在打开该文件的程序并退出
- 直接删掉该
swp
文件即可