Linux编辑器-vim使用

₯㎕星空&繁华 2024-09-20 16:37:01 阅读 84

目录

1.vim的基本概念

2.vim基本操作 

进入/退出vim 

 插入模式

3.命令模式

1.光标的移动 

​编辑

2.复制和粘贴

复制

粘贴 

 3.剪切加删除

剪切:

删除:

 4.撤销与恢复

5.替换字符

​编辑

6.批量化注释和批量化去注释

 5.底行模式  

1. 列出行号

​编辑

2.查找字符 

3.外部命令

​编辑

4.多文件操作

 6.替换内容

6.异常退出 


1.vim的基本概念

vi/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 macos、windows。vim具有三种模式:命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode)

正常/普通/命令模式(Normal mode) 

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。

插入模式(Insert mode) 

只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。

底行模式(last line mode) 

文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。

 

2.vim基本操作 

进入/退出vim 

进入vim

vim+文件名 进入该文件的编辑界面。

 退出vim

esc + :切换值命令模式,输入想要的指令退出。

选项 说明
w 保存
q 退出
! 强制
wq 保存并退出
q! 不保存,强制退出
wq! 保存并强制退出(最高权限者强制写入只读文件)

shift + zz 保存退出 

 插入模式

在文件的编辑页面,按 i 进入插入模式

光标表示当前插入位置 

 这些是常见的按键进入插入模式

i 在光标所在字符的前面开始插入
I 在光标所在行的头部开始插入,若头部有空格则在空格后插入
a 在光标所在字符的后面开始插入
A 在光标所在行的末尾开始插入
o 在光标所在行的下一行开始插入
O 在光标所在行的上一行开始插入
s 删除光标所在后面的一个字符,并在此插入
        S 删除光标所在行并开始插入

3.命令模式

以下操作都是基于vim命令集:

1.光标的移动 

移动光标指令

h 将光标向左移动(前面可带数字)
j 将光标向下移动(前面可带数字)
k 将光标向上移动(前面可带数字)
l 将光标向右移动(前面可带数字)
w 以单词为单位进行光标后移
e 光标跳到下个字的字尾
b 以单词为单位进行光标前移
^ 将光标移动到光标所在行的开头
$ 将光标移动到光标所在行的结尾
gg 将光标移动到当前文件的首行
shitf+g 将光标移动到当前文件的尾行
数字 + shift+g 将光标移动到指定行
ctrl+b 屏幕往“后”移动一页
ctrl+f 屏幕往“前”移动一页
ctrl+u 屏幕往“后”移动半页
ctrl+d 屏幕往“前”移动半页

2.复制和粘贴

复制

复制单行:yy,复制当前光标所在行复制多行:数字 + yy,从光标指定行开始向下复制指定行数。

粘贴 

粘贴单次:p,从光标当前所处位置的下一行开始粘贴。粘贴多次:数字 + p,将复制的内容粘贴指定次。

 3.剪切加删除

数字 + dd:剪切/删除指定行、连续的多行

剪切:

10dd+p(剪切10行然后复制)

 

删除:

剪切完不复制(p)就是删除了。  

行内往后局部删除

 x:删除光标后面的一个字符。 数字 + x:在一行内,删除从光标处开始往后的 n 个字符。

 行内往前局部删除

X:删除光标前面的一个字符。数字 + X:在一行内,删除光标前的 n 个字符

 4.撤销与恢复

撤销

u:撤销上一步执行的操作,类似于 Windows 的 ctrl + z

恢复

ctrl + r:取消之前执行的撤销操作,类似于 Windows 的 ctrl + y

5.替换字符

数字 + r + 想替换字符  对光标指定的位置,进行一个字符的低缓,可以一次替换多个。

shift + r + 想替换字符  进入替换模式,直接进行文本替换

6.批量化注释和批量化去注释

批量化注释

1.进入视图模式

 按住ctrl + v

2.区域选择

h、j、k、l、进行区域选择数字 + shift + g 选中连续的指定行数shift + g 从光标开始到末尾全部选中

3. 进入插入模式打上注释

 shift +i 进入插入模式并打上注释

4. 批量注释

按住Esc

批量注释演示 

ctrl + v 进入视图模式,然后数字 + shift + g 选中连续的指定行数。

 shift +i 进入插入模式并打上注释。

 ​​​​​

再按Esc就能批量化注释了

 批量化去注释

1.进入视图模式

ctrl + v

2.选择注释范围

h、j、k、l、进行区域选择数字 + shift + g 选中连续的指定行数shift + g 从光标开始到末尾全部选中

3.批量化去注释

注意事项:注释是两个字符单位,要确保选择去注释的范围 / / 选择到。 

 

 5.底行模式  

 之前的退出就是底行模式

选项 说明
w 保存
q 退出
! 强制退出
wq 保存并退出
q! 不保存,强制退出
wq! 保存并强制退出(最高权限者强制写入只读文件)

1. 列出行号

set nu : 输入「set nu」后,会在文件中的每一行前面列出行号 

set nonu :输入「set nu」后,会在文件中的每一行前面列出行号 

2.查找字符 

/关键字:往后查找第一个匹配的关键字。?关键字:往前查找第一个匹配的关键字。

3.外部命令

可以不退出 vim 在命令行执行基本操作指令。在 vim 界面的底行模式可以使用 ! 指令 的方式调用外部命令,enter回车键返回vim编辑界面。

4.多文件操作

在当前文件工作时,vim 不能像 vs 那样直接切换到其他文件进行操作 。此时可以使用 vs 文件名,分屏打开其他文件进行操作。

光标在哪个分屏就是在哪个分屏操作。 ctrl + ww 可以切换分屏光标,进行另一个分屏的操作。

 6.替换内容

s/搜索的内容/指定内容:用指定内容替换 光标所在行第一个 被搜索到的内容。s/搜索的内容/指定内容/g:用指定内容替换 光标所在行全部 被搜多到的内容。%s/搜索的内容/指定内容:用指定内容替换 整个文件每一行第一个 被搜索到的内容。%s/搜索的内容/指定内容/g:用指定内容替换 整个文件 被搜索到的内容。

 替换多段相同内容 

 

6.异常退出 

编辑中的文件未保存直接退出就是异常退出。见的最多的异常退出就是在命令模式下不小心 ctrl + z 之后,之后再打开文件就会出现以下情况。

(O)pen Read-Only: 打开此档案成为只读档, 可以用在你只是想要查阅该档案内容并不想要进行编辑行为时。

(E)dit anyway:**还是用正常的方式打开你要编辑的那个档案, 并不会载入暂存盘的内容。不过很容易出现两个使用者互相改变对方的档案等问题!

( R )ecover: 就是加载暂存盘的内容,用在你要救回之前未储存的工作。 不过当你救回来并且储存离开 vim 后,还是要手动自行删除那个暂存档喔!

(D)elete it: 你确定那个暂存档是无用的!那么开启档案前会先将这个暂存盘删除! 这个动作其实是比较常做的!因为你可能不确定这个暂存档是怎么来的,所以就删除掉他吧!

(Q)uit: 按下 q 就离开 vim ,不会进行任何动作回到命令提示字符。

(A)bort: 忽略这个编辑行为。

 临时解决

按下 q 之后出现以下信息,输入 E 或者 R 就能进入文件,但是之后还是会出现该提示。

永久解决

 用rm删除缓存文件

之前异常退出系统给我们缓存了一个隐藏文件,异常提醒时已经告诉我们名字了。

 

 我们将它删除就行了。



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。