加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Vim相关基础命令

发布时间:2020-12-15 20:01:48 所属栏目:安全 来源:网络整理
导读:引言 很多情况下需要在linux系统下面执行代码,但是通常我们习惯于windows的界面,这样有一种解决方案是在windows下开发,然后将代码push到linux上面执行。可是这有个问题,windows和linux需要具有同样的环境,比较麻烦。如果直接在linux下开发会不会方便很

引言

很多情况下需要在linux系统下面执行代码,但是通常我们习惯于windows的界面,这样有一种解决方案是在windows下开发,然后将代码push到linux上面执行。可是这有个问题,windows和linux需要具有同样的环境,比较麻烦。如果直接在linux下开发会不会方便很多呢。因此决定学习并熟练vim,用vim编程。

vim是什么

vi: Visual Interface 可视化接口
vim: VI iMproved VI增强版

Vim 是 UNIX 文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff),语法高亮,全面的帮助系统,本地脚本(Vimscript),和便于选择的可视化模式。 Vim 专注于键盘操作,它并不是像 nano 或 pico 一样的简单编辑器。Vim 需要花时间来学习,并值得花上更多的时间来掌握。

通俗来讲,就是一个文本编译器,不过这个编译器很牛掰。首先颜值很高,其次便利,但是不像sublime那样,vim是console级别的,因此不是那么方便。

vim基本命令

这里想分为三部分介绍,一部分是我熟悉的,也就是最基础的,一部分是高阶的,虽然用过但是不太熟,有待熟练的,还有一部分是要记住的,使用时不至于百度咯

familiar:

:q  退出
:wq 保存并退出
:q! 不保存并退出
ESC 退出编辑模式

i: 在当前光标所在字符的前面,转为输入模式,即insert方式;
a: 在当前光标所在字符的后面,转为输入模式;即append方式;
o: 在当前光标所在行的下方,新建一行,并转为输入模式;

x: 删除光标所在处的单个字符
#x: 删除光标所在处及向后的共#个字符
dd: 删除当前光标所在行

/text  查找text,按n健查找下一个,按N健查找前一个。
:set nu 设置显示行数

unfamiliar

:w! 强行保存
I:在当前光标所在行的行首,转换为输入模式
A:在当前光标所在行的行尾,转换为输入模式
O:在当前光标所在行的上方,新建一行,并转为输入模式;

p: 如果删除或复制为整行内容,则粘贴至光标所在行的下方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的后面

P: 如果删除或复制为整行内容,则粘贴至光标所在行的上方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的前面

?text  查找text,反向查找,按n健查找下一个,按N健查找前一个。

s/old/new/ 用old替换new,替换当前行的第一个匹配
s/old/new/g 用old替换new,替换当前行的所有匹配
%s/old/new/ 用old替换new,替换所有行的第一个匹配
%s/old/new/g 用old替换new,替换整个文件的所有匹配

Ctrl + r 重做(Redo),即撤销的撤销。
u 撤销(Undo)
U 撤销对整行的操作

yy 拷贝当前行

nyy 拷贝当前后开始的n行,比如2yy拷贝当前行及其下一行。

unknown

:10,20 s/^/    /g 在第10行知第20行每行前面加四个空格,用于缩进。

:1,10d 将1-10行剪切。利用p命令可将剪切后的内容进行粘贴。

:1,10 m 20 将第1-10行移动到第20行之后。
:split或new 打开一个新窗口,光标停在顶层的窗口上

:split file或:new file 用新窗口打开文件
split打开的窗口都是横向的,使用vsplit可以纵向打开窗口。
Ctrl+ww 移动到下一个窗口
Ctrl+wj 移动到下方的窗口
Ctrl+wk 移动到上方的窗口
G:到文件尾
numG:移动光标到指定的行(num)。(比如10G就是到第10行)
gg:到文件首

3,5 s/^/#/g 注释第3-5行
3,5 s/^#//g 解除3-5行的注释
1,$ s/^/#/g 注释整个文档。
:%s/^/#/g 注释整个文档,此法更快。
:n1,n2 s/^////g,在n1到n2行的开头用注释。

:set ignorecase  忽略大小写的查找
:set noignorecase  不忽略大小写的查找
set ai 设置自动缩进

后记

文中记录了一些比较有用的命令,vim很强大,还有很多其它的命令,请看参考文献。不知道行业大佬对vim的掌握程度怎样,如果有大佬看到的话,可以聊聊哦^v^

参考文献

https://www.cnblogs.com/usergaojie/p/4583796.html
https://www.w3cschool.cn/vim/cjtr1pu3.html
https://www.cnblogs.com/wangrx/p/5907013.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读