前言
前言:tmux与vim简介
文章目录
一、tmux
1、作用
- 分屏:tmux 可以实现左右分屏和上下分屏,可以满足分屏抄写内容的需求。
- 任务在后台运行:在 tmux 中运行的进程不会网络断开或者终端关闭导致进程直接中断,会继续在后台运行,下次打开时只需连接回 tmux 即可。
2、结构
1)session
- 一个
tmux
中可以开很多个session(会话)
2)window
- 一个
session
中可以包含多个window (窗口)
3)pane
- 一个
window
中可以包含多个pane(小窗口)
,其中每一个pane
是一个最小单位,每一个pane
都是一个shell
对话框。
3、常用操作
有前缀键
-
新建session:shell 对话框中输入
tmux
,就会新建一个 session,其中包含一个window,window 中包含一个 pane,pane 中打开一个 shell 对话框。 -
左右分屏和上下分屏
- 将当前 pane 左右平分成两个pane:按下
Ctrl + a
后手指松开,然后按%
。 - 将当前 pane 上下平分成两个 pane:按下
Ctrl + a
后手指松开,然后按"
。
- 将当前 pane 左右平分成两个pane:按下
-
关闭:
Ctrl + d
,关闭当前 pane;如果当前window的所有pane均已关闭,则自动关闭window;如果当前session的所有window均已关闭,则自动关闭session。 -
全屏:按下
ctrl + a
后手指松开,然后按z
,将当前 pane 全屏/取消全屏。 -
挂起:按下
ctrl + a
后手指松开,然后按d
,挂起当前 session。目的是从 tmux 中里退出但又不想将所有的窗口关闭。 -
打开挂起:
tmux a
,打开之前挂起的 session。 -
选择其它 session:按下
ctrl + a
后手指松开,然后按s
,上下方向键选择,左右方向键展开。 -
复制和粘贴
- 按下
Ctrl + a
后手指松开,然后按[
- 用鼠标选中文本,被选中的文本会被自动复制到 tmux 的剪贴板
- 再次按下
Ctrl + a
后手指松开,然后按]
,会将剪贴板中的内容粘贴到光标处
- 按下
二、vim
1、 作用
- vim 是终端里的一个文本编辑器。
- vim 可以根据文件扩展名自动判别编程语言,支持代码缩进,代码高亮等功能。
2、使用方式
1)创建
vim filename
:如果已有该文件 filename,则打开它。如果没有该文件,则打开个一个新的文件,并命名为f ilename。
2)模式分类
- 一般命令模式(默认模式):输入命令,不同命令可执行不同操作;可以复制、粘贴、删除文本,但不可编辑文本。
- 编辑模式
- 进入方式:在一般命令模式里按下
i
,会进入编辑模式。 - 退出方式:按
ESC
会退出编辑模式,返回到一般命令模式。
- 进入方式:在一般命令模式里按下
- 命令行模式
- 操作:在一般命令模式里按下
: / ?
三个字母中的任意一个,会进入命令行模式,命令显示在最下面。 - 可以进行查找文本、替换文本、保存、退出、配置编辑器等。
- 操作:在一般命令模式里按下
3)操作
a、一般命令模式下
-
移动:按上下左右方向键,一个字符一个字符进行移动,最后一个位置的光标是在最后一个字符的前面,移动到最后也不会自动换行
-
行内操作
n<Space>
:n 表示数字,按下数字后再按空格,光标会向右移动这一行的 n 个字符。(一个字符一个字符进行移动)。0
或 功能键[Home] 光标移动到本行开头;$
或 功能键[End] 光标移动到本行末尾。
-
操作行
gg
或者 1G:光标移动到第一行G
:光标移动到最后一行nG
或:n
:n为数字,光标移动到第n行n<Enter>
:n为数字,光标向下移动n行(一行一行进行移动)
-
查找字符
/word
:从光标位置开始向下找第一个值为 word 的字符串?word
:从光标位置开始向上找第一个值为word的字符串n
:往后找下一个的操作,顺序和查找的顺序顺序一致N
:往前找上一个的操作,顺序和查找的顺序顺序一致
-
替换字符
:n1,n2s/word1/word2/g
:n1 与 n2 为数字,n1 表示开始行号,n2 表示结束行号,word1 表示要替换的字符串,word2 表示替换成的字符串- 全文替换:
:1,$s/word1/word2/g
:将全文的 word1 替换为 word2 :1,$s/word1/word2/gc
:将全文的word1替换为word2,且在替换前要求用户确认。
-
文本操作
v
:配合上下左右方向键选中文本,按两下ESC
取消选中的文本d
:剪切选中的文本,dd
剪切光标所在的当前行y
:复制选中的文本,yy
复制光标所在的当前行p
:如果复制/剪切的是选中的文本(通过 v 来选中的)而不是复制/剪切当前行的话会在光标所在的下一个位置粘贴,如果复制/剪切的是当前行的话会在光标所在的下一行粘贴u
:撤销操作,Ctrl + r
:取消撤销>
(大于号):将选中的文本整体向右缩进一次,<
(小于号):将选中的文本整体向左缩进一次
b、编辑模式下
- 直接编写代码
c、命令行模式下
:noh
(nohight 的缩写) 关闭查找的关键词高亮:w
保存本文,:wq
:保存文本并退出编辑模式,:w!
强制保存文本,:q
:退出编辑模式,:q!
强制退出编辑模式:set nu
(set number 的缩写)显示行号,:set nonu
(set nonumber 的缩写) 隐藏行号:set paste
向 vim 中粘贴代码时取消自动缩进,:set nopaste
粘贴完代码后开启缩进gg=G
文本内容全部格式化ggdG
删除文本所有内容- 在 命令行中复制和粘贴,按住
shift
选中文本(命令行中/vim编辑器一般命令模式下),ctrl + insert
复制(命令行中/vim编辑器一般命令模式下),shift + insert
粘贴(命令行中/vim编辑器编辑模式下)