Vim是一个类似Vi的著名的功能强大、高度可定制的文本编辑器,在Vi的基础上改进和增加了许多的功能,Vim是自由软件,今天我们就来讲讲Vim的使用方法。

本文是基于CentOS7上的vim编辑器演示的,默认CentOS7没有安装Vim,可以使用yum -y install vim安装Vim。

Vim的四种模式及转换

命令模式:控制屏幕的光标移动,进行文本的删除、复制等文字编辑工作,当使用vim打开某个文件的时候,默认模式就                     是命令模式

插入模式:只有在插入模式下,才可以输入文字

末行模式:保存文件或退出vim,同时也可以设置编辑环境和一些编译工作,如列出行号、寻找字符串等。

可视化模式:可以使用鼠标框选文字,比较人性化

特别要提到的是,在命令模式到插入模式,可以有多种方式:

i:insert,在光标所在处输入

a:append,在光标所在处后方输入

o:在光标所在行处的下方打开一个新行

I:在光标所在行的行首输入

A:在光标所在行的行尾输入

O:在光年所在行的上面打开一个新行

退出文件

在命令模式下:

ZZ:保存并退出

在末行模式下:

q:退出

q!:强制退出,不保存此前的编辑操作

wq:保存并退出

x:保存并退出w:保存,也可以保存到某个文件 w /PATH/TO/SOMEFILE

举例:我们复制一个文件cp /etc/rc.d/init.d/functions  /tmp/functions.txt,然后操作/tmp/functions.txt这个文件,在第第二行中插入"# hello linux",保存退出。

光标跳转

在命令模式下操作

字符间跳转

h:向左一个字符

l:向右一个字符

k:向上一个字符

j:向下一个字符

当然也可以是键盘的上下左右箭头

可以结合数字加COMMAND,例如按 " 2  h " 光标向左移动2个字符

单词间跳转

w:下一个单词的词首

e:当前或后一个单词的词尾

b:当前或者前一个单词的词首

可以结合数字加COMMAND,例如"2 w":当前单词后的第二个单词的词首

行首行尾跳转

^:跳转至行首的第一个非空白字符0:跳转至行首

$:跳转至行尾

行间跳转

#G:跳转至由#指定的行

1G,gg:第一行

G:最后一行

句间跳转和端间跳转(不常用)

):下一句

(:上一句

}:下一段

{:上一段

翻屏

Ctrl+f:向文件尾部翻一屏

ctrl+b:向文件首部翻一屏

ctrl+d:向文件尾部翻半屏

ctrl+u:向文件首部翻半屏

Enter:按行向后翻

vim的编辑命令

字符编辑

x:删除当前字符

#x:删除光标处起始的#个字符

xp:交换光标处的字符及其后面字符的位置

替换命令(replace)

r:替换光标所在处的字符

r+替换字符

删除命令

d:删除命令,不能单独使用

d$:删除当前字符到所在行的行尾

d^:删除当前字符到所在行的行首(不删除光标所在字符)

dw:删除光标所在的单词位置至下一个单词的词首

de:删除光标所在单词的位置至下一个单词的词尾

db:删除光标所在单词的位置至单词的首部dd:删除光标所在的行

可以结合数字使用: "3 dd":删除光标所处的行起行及下面的行,共3行

注意:删除的内容被保存在缓存区里面

粘贴命令

p:缓冲区中的内容如果是整行,则粘贴在当前所在行的下方,否则,则粘贴至当前光标所在处的后方

P:缓冲区中的内容如果是整行,则粘贴在当前所在行的上方,否则,则粘贴至当前光标所在处的前锋

复制命令

y:复制,不能单独使用

y$:复制光标位置到行尾

y^:复制光标位置至行首,不包含光标所在的字符

ye,yw:复制光标所在单词的位置至词尾

yb:复制光标所在单词的位置至词首

yy:复制一整行

改变命令

和d的作用是一样的,删除文件,不同之处在于,使用c之后,会直接进入插入模式

c$:删除光标所在位置至行尾并进入插入模式

c^:删除光标所在位置至行首并进入插入模式

ce,cw:删除光标所在单词的位置至单词尾部

cb:删除光标所在单词的位置至单词首部

其他编辑操作

在命令模式下使用v和V进入可视化模式

v:按字符选定

V:按行选定

选定之后,可以结合d(删除),c(删除并进入插入模式),y(复制)来操作

vim末行模式

地址定界

n:特定的第n行,列入:5,即第5行

. :当前行

$:最后一行

n1,n2:指定行范围,左侧为起始行,右侧为结束行

n1,+n2:指定行范围,左侧为起始行,右侧为偏移量%:全文/pattern/:从光标所在处起始向文件尾部第一次被模式匹配到的行/pat1/,/pat2/:从光标所在处起始,第一由pat1匹配到的行开始,至第一次由pat2匹配到的所有行

可以结合d,y,c使用,也可以使用w将范围内的文本保存至指定的文件,使用r  /PATH/FROM/SOMEFILE 将指定文件中的文本读取并插入至指定的位置。

查找

/PATTERN:从当前光标所在处向文件尾部查找能够被模式匹配的所有字符串?PATTERN:从当前光标所在处向文件首部查找能够被模式匹配的所有字符串

n:查看下一个 N:查看上一个

查找并替换

s:末行模式的命令

格式:s/要查找的内容/替换的内容/修饰符

要查找的内容:可使用正则表达式

替换的内容:不能使用正则表达式,但是可以引用

如果"要查找的内容"部分在模式中使用了分组符号,在"替换的内容"中可以使用后向引用

直接引用查找模式匹配到的全部文本,要是用&符号

修饰符:

i:忽略大小写

g:全局替换,意味着一行中如果匹配到多次,则均替换

有的时候我们需要匹配"\",我们就可以把分隔符替换为其他的字符,比如s@@@或者s###。

vim的多文件功能

vim可以同时打开多个文件

vim FILE1 FILE2..

在文件间切换:

:next 下一个文件

:prev 上一个文件

:first 第一个文件

:last 最后一个文件

退出所有文件:

:wqall 保存退出所有文件

:wall保存所有文件

:qall 退出所有文件

多窗口查看

在使用vim打开多个文件时使用选项:

-o:水平分隔窗口-O:垂直分隔窗口

使用ctrl+w切换窗口

定制vim的工作特性

在末行模式下的设定,仅对当前vim有效,永久修改必须修改配置文件:

全局:/etc/vimrc

用户个人:~/.vimrv 没有可以创建

在末行模式下的操作:

1、行号

显示:set number, 简写为set nu

取消显示:set nomber, set nonu2、括号匹配高亮

匹配:set showmatch, set sm

取消:set nosm3、自动缩进

启用:set ai

禁用:set noai4、高亮搜索

启用:set hlsearch

禁用:set nohlsearch5、语法高亮

启用:syntax on

禁用:syntax off6、忽略字符大小写

启用:set ic

禁用:set noic

举例:在vim中,tab键为8个空格的位置且8个空格是一个整体,如果是左右键移动会看到只能移动一次就是8个空格,那么如何将其修改为4个空格呢?

可以在/etc/vimrc加入以下2行:

set ts=4#设置宽度为4个空格

set expandtab #将tab转换为了space

在末行模式下可以获取VIM的帮助

:help

:help subject

如果大家想练习vim的操作,输入vimtutor即可获取VIM教程

[root@localhost ~]# vimtutor

linux gvim使用教程,Vim编辑器使用教程相关推荐

  1. linux ultraedit安装教程,Linux系统安装最新版本Vim编辑器的简单方法整理

    Vi编辑器已经存在了很长时间,它是在1976年左右开发使用的,Vi编辑器为用户提供了传统而强大的功能,例如有效的编辑界面,终端控制等. 但是,Vi编辑器缺少某些吸引人的功能,例如多个屏幕,语法高亮显示 ...

  2. Linux(2) vi和vim编辑器

    Linux(2) vi和vim编辑器 学习视频: https://www.bilibili.com/video/BV1Sv411r7vd?p=16&spm_id_from=pageDriver ...

  3. Linux上如何使用vim编辑器写代码

    Linux上如何使用vim编辑器写代码 也许很多朋友刚刚接触linux但不知道如何写程序 今天就带大家用一个简单容易上手的方式写一个hello程序 首先打开vim编辑器同时创建一个.c或.cpp文件 ...

  4. vim编辑器使用教程(基础版)

    本文为最基础的操作,若需详细教程请访问文末参考. 一.进入 vim /root/1.txt (1.txt为待编辑的文件) :利用vim编辑器打开文件 ====>  录入 i  (从一般模式转变为 ...

  5. VIM 编辑器使用教程

    我们如果要在终端模式下进行文本编辑或者修改文件就可以使用 VI/VIM 编辑器,Ubuntu 自带了 VI 编辑器,但是 VI 编辑器对于习惯了 Windows 下进行开发的人来说不方便,比如竟然 不 ...

  6. 【Linux操作系统系列】Vim 编辑器

    Vim 编辑器 文章目录 Vim 编辑器 Vim 简介 Vim - 难以驾驭的神器 Vim 入门帮助 Vim 模式介绍 正常模式 命令模式 插入模式 Vim 实例 Vim 第一步 首次运行 Vim 插 ...

  7. 树莓派AI视觉云台——6、Linux常用命令及vim编辑器的使用

    一.Linux常用命令 Linux下的命令有几千条,但真正在实际开发中运用的就只有那些. 1.查看操作系统版本 cat /proc/version 2.查看主板版本 cat /proc/cpuinfo ...

  8. 大数据技术之_01_Linux学习_01_linux的入门+VM和linux的安装+linux的目录结构+远程登录到linux服务器+vi和vim编辑器+开机、重启和用户登录注销+用户管理+用户组管理

    大数据学习之_01_Linux学习_01 1 linux的入门 1.1 Linux的介绍 2 VM和linux的安装 2.1 安装vm和Centos 2.1.1 基本说明 2.1.2 CentOS安装 ...

  9. Linux笔记:使用Vim编辑器

    Vi编辑器是Unix系统上早先的编辑器,在GNU项目将Vi编辑器移植到开源世界时,他们决定对其作一些改进. 于它不再是以前Unix中的那个原始的Vi编辑器了,开发人员也就将它重命名为Vi improv ...

最新文章

  1. HwServiceManager篇-Android10.0 HwBinder通信原理(五)
  2. caffe教程翻译:在caffe上训练与测试数据
  3. 简单介绍一下solr
  4. Nginx的功能特性及常用功能
  5. 浅谈移动互联网广告设计评论
  6. go http.Get请求 http.Post请求 http.PostForm请求 Client 超时设置
  7. cocoapods导入第三方库
  8. 菲涅耳衍射matlab,matlab – 两步菲涅耳衍射
  9. 数字图像处理笔记(八)彩色图像和彩色图像直方图均衡化
  10. linux版vmware无法导入ovf,vmware 虚拟机导入OVF出现路径错误
  11. 小程序记账项目源码-采用云开发
  12. MindManager2020官方中文版思维导图软件使用激活安装免费教程下载
  13. Python爬虫一则
  14. 抽鬼牌(poker)
  15. MJiOS底层笔记--OC对象本质
  16. C51简易计算器微机课设
  17. 如何对查询好的快递单号物流进行删除的几种方法
  18. Linux 嵌入式开发 网络编程: day4
  19. 微信amr格式语音转MP3
  20. 台电p10hd四核刷Android6.0,台电a10hd_台电p10hd四核_台电a10hd刷win

热门文章

  1. APK反编译工具在ubuntu的安装及使用
  2. python开发mbus程序_基于MBUS标准协议采集水、热、气表的方法与流程
  3. 使用Tensorflow构建属于自己的图片分类器
  4. (转)Eclipse导入EPF配置文件
  5. 捐赠 200 亿美元,比尔·盖茨势要退出世界富豪榜!
  6. java收到邮件后短信提醒_java邮件发送和短信发送(一)
  7. 保护你的文件夹和文件
  8. Windows cmd命令 个人常用0529
  9. Gif Movie Gear
  10. EasyDSS流媒体视频实时回传与录像管理解决方案