linux vim编译命令,Linux中vim的三种模式以及基本命令

在Linux中vim的三种模式分别为:命令模式、末行模式、编辑模式。以下是三者的关系图:

20180111010859813583.jpg

三种模式的彼此切换:

命令模式是vim中的默认模式。

命令模式切换至末行模式: 使用英文冒号(:)。

末行模式切换至命令模式: 按一下esc 或者 两下esc 或者 删除末行的全部命令。

命令模式切换至编辑模式: 按键 i 或者 a。

编辑模式切回命令模式: 按下esc。

其中,末行模式 和 编辑模式 之间,不能直接切换,必须切换到命令模式,再进行切换。

接下来细化到每个模式下的各种命令操作:

一、末行模式

末行模式中基本的操作有:保存、另存、退出、查找、替换。

1、保存

语法: :w (write)

说明: 将已做的更改进行保存,主要是编辑模式操作完成之后的操作。

20180111010859815536.jpg

2、另存

语法: :w 文件路径

说明:  保存和另存命令基本相似,区别在于另存需要指定文件的保存路径。

20180111010859817489.jpg

3、退出

语法: :q(quit)

说明: 如果不想宝座直接退出可使用(:q!), 其中!表示强制

20180111010859819443.jpg

4、查找

语法: /需要查找的字符串

说明:可使用n(向下切换)、N(向上切换),改变光标位置。查找的位置会高亮

20180111010859820419.jpg

5、替换

语法: :s /被替换的字符/替换成的字符

说明: 对当前行的首次出现的字符进行替换

20180111010859822372.jpg

语法: :s /被替换的字符/替换的字符/g

说明:对当前行的所有匹配的字符进行替换,g代表global

20180111010859824326.jpg

语法:%s /被替换的字符/替换的字符

说明:对整个文档的每一行首次匹配的字符串进行匹配替换

20180111010859825302.jpg

语法: %s /被替换的字符串/替换的字符串/g

说明: 替换整个文档匹配上的字符

20180111010859827255.jpg

二、命令模式

命令模式中基本的操作有:光标的移动、删除、复制。

1、光标的移动

语法:定位到最后一行 (G)

定位到第一行 (两个gg)

光标定位到指定行 (数字+G)

光标上衣或下移 (数字+↑ 或 数字+↓)

2、删除

语法:删除当前行(dd)[行号重置]

说明:删除当前行下一行不上移,文档行号会重新索引。

语法:删除当前行(D)[当前行置空,保留当前行号]

说明:删除当前行下一行不上移,删除后当前行留空

语法:删除多行(数字+dd)

说明:删除当前光标所在下一行的n条行数,n代表所填的数字。

注意:在vim中,删除和剪切命令是一样的,可用粘贴命令显示出来。

3、复制

语法:复制当前行(yy)

语法:复制多行(数字+yy)

说明:表示复制当前行一下指定的行数

温馨提示:复制完成后,可用p(parse)进行粘贴,粘贴在所在行的下一行

三、编辑模式

命令模式中基本的操作有:进入编辑 和 退出。

1、进入编辑

语法:a (afterinsert)表示在光标后进行编辑插入

i (insert) 表示在当前光标出进行编辑插入

2、退出

语法:使用esc即可退出 编辑模式

四、扩展

1、行号的显示问题

一般情况下,vim通过在末行模式中添加:set nu命令进行行号的显示,但这并不是

全局的,通常在下一次打开文件时,行号会自动消失,为了便于操作,我们通常会

修改vim的配置文件,来使得行号显示对全局生效。

vim的配置文件位于当前用户的家目录。若没有可自行创建。文件名称为.vimrc

20180111010859829209.jpg

在 当前文件输入 "set nu", 即可实现全局行号显示有效。

2、异常关闭处理

在文件没有正常关闭的情况下,如未保存直接通过远程窗口关闭。

20180111010859830185.jpg

解决此问题的方式是:删除该文件的交换文件

提示信息已经十分明确。交换文件.vimrc.swp在文件未被正常关闭时,自动创建。

所以使用命令: rm -f .vimrc 即可

注意:一般交换文件的通常格式为: 文件名.swp

3、重做 / 撤销

如果想要撤销操作,在末行模式中输入 :u

取消撤销为: ctrl + r

进行多步撤销为: 数字 + u

4、:wq和:x退出的方式有何区别?

在实际开发还是建议使用:x方式退出。

区别在于wq的方式无论文件是否有修改都会对文件的最后修改时间进行改变。

而:x只有在文件内容真正改变时才会修改文件最后修改时间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值