Linux终端编辑器——vim的使用 - 技术分享 - 志盟培训
首页技术分享 Linux终端编辑器——vim的使用

Linux终端编辑器——vim的使用

更新时间:2017-05-22      作者:张老师       阅读:767

vim是Linux默认编辑器vi的升级版本,它不仅兼容vi的所有命令,更添加了很多新的特性,比如说语法高亮,也能在mac、windows系统下运行。它的功能强大,可以说,不逊色于其它任何一种编辑器。Now,我们一起来看看这款编辑器的介绍和使用方法。


三大模式

第一次打开vim的时候,啪啦啪啦地输入一大堆字符,发现根本没反应。这就尴尬了。别着急,这是因为vim有三种模式,默认进去的时候是命令模式,并不能进行字母的输入。三种模式分别是命令模式(command mode)、插入模式(insert mode)、末行模式(last line mode)。

命令模式:

文本的复制、剪切、粘贴、删除,光标的移动,以及进入插入模式或者末行模式。

插入模式:

编辑文字的操作,通过[ESC]返回到命令模式。

末行模式:

文本的保存,退出vim,以及查找,替换,设置vim功能(行号等)等操作。


Linux终端编辑器——vim的使用

基本操作

进入vim

在终端输入命令vim file,打开一个名为file的文件。进去之后,默认是命令模式,并不能进行字符输入。

文字编辑

在命令模式下,通过 i 进入编辑模式,在该模式下,你就可以像普通编辑器一样编辑文本了。

保存/退出

保存和退出功能,需要切换到末行模式。在插入模式下,通过[ESC]退回到命令模式,然后通过 :进入到末行模式。

:w   保存文档

:q 退出vim

:wq 保存并退出vim编辑器。

:q! 不保存并退出vim编辑器


其它命令:

ok,通过上面的基本操作说明,相信大家已经能够使用vim来编辑一个文档了,接下来,我们继续来看看vim编辑器的其它功能。

命令模式:

1、进入插入模式

前面说了,我们可以通过[i]进入插入模式。其实,我们也能通过[a]、[o](区分大小写)进入插入模式,它们有什么不同?进入插入模式后,光标所在的起始位置不同。

有什么不同?这里不做过多说明,大家可以动手试试,看看有什么不同的效果。不建议大家硬记这几个字母的区别,多用几次就熟了。

2、移动光标

vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格。

按「ctrl」+「b」:屏幕往“后”移动一页。

按「ctrl」+「f」:屏幕往“前”移动一页。

按「ctrl」+「u」:屏幕往“后”移动半页。

按「ctrl」+「d」:屏幕往“前”移动半页。

按数字「0」:移到文章的开头。

按「G」:移动到文章的最后。

按「$」:移动到光标所在行的“行尾”。

按「^」:移动到光标所在行的“行首”

按「w」:光标跳到下个字的开头

按「e」:光标跳到下个字的字尾

按「b」:光标回到上个字的开头

按「#l」:光标移到该行的第#个位置,如:5l,56l。

3、复制

「yw」:将光标所在之处到字尾的字符复制到缓冲区中。

「#yw」:复制#个字到缓冲区

「yy」:复制光标所在行到缓冲区。

「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。

「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。

4、剪切

使用方法类似复制,将[yy]换成[dd]即可。

5、 撤销和重做

[u] 撤销

[ctrl + r] 重做


末行模式下的命令

1) 显示行号

:set nu 显示行号

2 )跳转到指定行

:# 跳转到第#行

3) 查找

:/# 从光标所在行开始,查找下一个 # 字符串

:?# 从光标所在行开始,查找上一个 # 字符串

:n 若找到的不是你想找的字符,通过[n]切换到下一个#

附一张高手总结的vim命令图:

Linux终端编辑器——vim的使用

在线报名

志盟科技上海招聘

在线报名 联系我们

志盟科技深圳招聘

在线报名 联系我们

志盟科技北京招聘

在线报名 联系我们
联系我们

咨询热线:

咨询 QQ:517578         

就业学员

  • 就业学员

    姓名:郭凡凡 
    院校:阜阳师范学院
    就职:佳戴
    职位:软件工程师
    月薪:10000

  • 就业学员

    姓名:陈祥龙 
    院校:中北大学
    就职:美囤妈妈
    职位:软件工程师
    月薪:9000

  • 就业学员

    姓名:陈建伟
    院校:南昌航空大学
    就职:SONY
    职位:嵌入式工程师
    月薪:8000

×
×
  • *真实姓名
  • *联系手机
  • *上课地址
  •    QQ号码

温馨提示:请保持手机畅通,咨询老师将为您提供专属的一对一报名服务。

×
  • *真实姓名
  • *联系手机
  • *联系邮箱
  • * QQ号码

温馨提示:请保持手机畅通,咨询老师将为您提供专属的一对一的服务。

本站由 宽敬科技——创新企业的建站运营顾问 提供支持