"vi:可视化接口(Visual Interface)

vim:是vi的增强版(vi iMprove)

vi编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器。它是我们使用Linux系统不能缺少的工具。Unix及linux系统的任何版本下的vi编辑器是完全相同的,学会它后,您将在Linux的世界里畅行无阻。

vim可以说的vi的升级版本,它可以用多种颜色的方式来显示一些特殊的信息。

vim具有程序编辑能力,可以以字体颜色辨别语法的正确性,方便程序设计。

vim会依据文件扩展名或者是文件内的开头消息,来判断该文件的内容而自动的执行该程序的语法判断式,再以颜色来区分显示代码与注册信息。

vim加入了很多额外的功能,例如支持正则表达式的搜索、多文件编辑、快复制等等。这帮助我们在进行一些配置文件的修改工作时提高了不少的效率。

vim有三种工作模式,如下图:

vim编辑器的配置文件:全局/etc/vimrc 用户~/.vimrc
修改配置文件可使某项配置默认生效,比如在配置文件内加入一行:set nu,那么打开文件后将默认显示行号。


打开文件

vim + file 打开文件并定位到最后一行
.
vim +n file 打开文件并定位到第n行
.
vim +/string file 打开文件并定位到第一次被'string'匹配到的行的行首
.
vim file1 file2 file3 打开多个文件
.
vim -o file1 file2 file3 水平分隔显示多个文件
.
vim -O file1 file2 file3 垂直分隔显示多个文件

命令模式

Shift + ZZ 保存退出
.
0 跳转至当前行行首,绝对行首
$ 跳转至当前行行尾,绝对行尾
^ 跳转至当前行行首第一个非空白字符
.
h ⬅️移
l ➡️移
j ⬇️移
k ⬆️移
.
w 移至下一个单词的词首
e 移至下一个单词的词尾
b 移至上一个单词的词首
?w 表示向后移动?个单词
.
Ctrl + f 向下翻一屏
Ctrl + b 向上翻一屏
Ctrl + d 向下翻半屏
Ctrl + u 向上翻半屏
.
cc 删除光标所在行,并进入编辑模式
?x 删除光标所在字符及向后?个字符
dw 删除光标所在位置到下一个单词词首所有字符
?dw 删除当前光标所在处及向后第?个单词词首内所有字符
.
P 大写P,粘贴至光标所在行的上面(复制行)或前面(复制快)
.
yw 复制光标所在字符到下个单词词首内容
y?G 复制光标所在行到?行的所有内容
.
r? 单字符替换,将光标所在字符替换为?
R 替换模式,可以做字符串替换
.
?u 撤销?次操作
Ctrl + r 撤销最近一次的撤销操作
.
. 重复最近一次的操作
.
v 按字符选取,键盘控制光标划过的区域被选取
V 按矩形选取,键盘控制光标划过的行被选取
.

末行模式

set nu 显示行号,nu是number的简写
set nonu 取消显示行号
.
set ai 自动缩进,ai时autoindent的简写
set noai 取消自动缩进
.
set ic 忽略大小写,ic时ignorecase的简写
set noignorecase 区分大小写
.
syntax on 打开语法高亮显示
syntax off 关闭语法高亮显示
.
+? 向上移动?行
-? 向下移动?行
.
5, 10d 删除5至10行的所有内容
5, 10y 复制5至10行的所有内容
.
/string 从当前位置向后查找
?string 从当前位置向前查找
.
line1, line2s/old/new/gi 替换,比如1,$(或%)表示全文,g:全局替换,i:忽略大小写
.
打开多个文件时使用:
next 切换到下一个文件
prev 切换到上一个文件
last 切换到最后一个文件
first 切换到第一个文件
qa 退出所有文件
wqa 保存退出所有文件
.
w filepath 将当前文件另存到指定路径的文件
5, 10w filepath 将5至10行的内容保存至指定路径的文件
.
r file 将file文件内的所有内容附加到当前光标所在位置的后面
.
! command 执行操作系统命令


朋友,你要努力!

"

【正确使用vim编辑器的姿势】的更多相关文章

  1. 【 正确使用vim编辑器的姿势】

    vi:可视化接口(Visual Interface) vim:是vi的增强版(vi iMprove) vi编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样 ...

  2. Vim编辑器与Shell命令脚本

    章节简述: 本章节将教给您如何使用Vim编辑器来编写文档.配置主机名称.网卡参数以及yum仓库 ,熟练使用各个模式和命令快捷键. 我们可以通过Vim编辑器将Linux命令放入合适的逻辑测试语句(if. ...

  3. Centos 下安装VIM编辑器

    我们在安装完Centos后,它默认的是安装了VI编辑器,VIM是没有安装的,所以我们在使用vim test.txt时会提示: vim command not found ... 这就是说明我们的Lin ...

  4. 第4章 Vim编辑器与Shell命令脚本

    章节简述: 本章节将教给您如何使用Vim编辑器来编写文档.配置主机名称.网卡参数以及yum仓库 ,熟练使用各个模式和命令快捷键. 我们可以通过Vim编辑器将Linux命令放入合适的逻辑测试语句(if. ...

  5. [嵌入式培训 笔记]-----Vim编辑器使用简介

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 第一讲小结 1. 光标在屏幕文本中的移动既 ...

  6. vim编辑器安装命令使用命令和设置的使用总结

    vim编辑器的安装 vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.本文讲解主要是在Cento ...

  7. 4.Vim编辑器与Shell命令脚本

    第4章 Vim编辑器与Shell命令脚本 章节简述: 本章首先讲解如何使用Vim编辑器来编写.修改文档,然后通过逐个配置主机名称.系统网卡以及Yum软件仓库参数文件等实验,帮助读者加深Vim编辑器中诸 ...

  8. Linux 就该这么学 CH04 VIM编辑器和Shell命令脚本

    0 概述 1 Vim编辑器 在linux 中一切都是文件,而配置一个服务就是修改其配置文件的参数. vim 编辑器有三种模式:命令模式,末行模式和编辑模式. 命令模式:控制光标移动,对文件进行操作. ...

  9. Linux学习Day5:Vim编辑器、配置网卡、配置Yum软件仓库

    今天首先学习Vim编辑器的使用,通过它可以对Linux系统的文件进行编写和修改.在Linux系统中一切都是文件,所以熟练掌握Vim编辑器的使用十分重要.最后通过配置主机网卡的实验,来加深Vim编辑器中 ...

随机推荐

  1. Unable to execute command or shell on remote system: Failed to Execute process

    1.问题描述 先说下我的项目环境:jenkins部署在windows下面,项目部署也是在windows下面,ssh服务器是FreeSSHd,原来是打算用Send files or execute co ...

  2. Goland 2019下载和安装(带破解补丁和汉化包)

    Goland 简介 Goland 是由 JetBrains 公司开发的一个新的商业 IDE,旨在为 Go 开发者提供的一个符合人体工程学的新的商业 IDE.Goland 整合了 IntelliJ 平台 ...

  3. KMP(模板)

    算法讲解: KMP算法最浅显易懂 模板来源: 从头到尾彻底理解KMP 首先:KMP的模板为: void get_next(char *a, int *nex) { nex[] = ; , j = ; ...

  4. DFS-回溯与剪枝-C - N皇后问题

    C - N皇后问题 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上.你的任务是,对于给定的N,求出有多少种合法的放 ...

  5. nodeJS菜鸟教程笔记

    http模块 var http = require('http'); // 引入http模块 var url = require('url'); // 引入url模块 var querystring ...

  6. spring boot 文件上传工具类(bug 已修改)

    以前的文件上传都是之前前辈写的,现在自己来写一个,大家可以看看,有什么问题可以在评论中提出来. 写的这个文件上传是在spring boot 2.0中测试的,测试了,可以正常上传,下面贴代码 第一步:引 ...

  7. python2.6升级python2.7后,yum不能用了,如何解决

    背景: 跑python的case时候,发现log功能不好用,于是升级了python2.6-->python2.7 but,升级之后,发现yum命令不好用了.怎么办? 百度搜了一下,如何解决: 参 ...

  8. 机器学习作业(二)逻辑回归——Matlab实现

    题目太长啦!文档下载[传送门] 第1题 简述:实现逻辑回归. 第1步:加载数据文件: data = load('ex2data1.txt'); X = data(:, [1, 2]); y = dat ...

  9. 区间无修改莫队学习笔记(lg1494小z的袜子)

    这几天感觉要学的要做的有点多,就偷了个懒没写笔记,赶紧补一下 莫队嘛,一个离线处理各种区间(或树上)询问的神奇算法 简单而言,按左端点排个序然后指针l,r递推就好了 复杂度证明貌似是不待修改的n^1. ...

  10. 在npm上如何发布自己的包

    环境需要:node和npm 然后在本地建一个文件夹作为你要发布的模块 然后在这个文件夹下打开cmd 执行:npm init 按照提示写对应的,或者先不写也可以,最后y 这时候在mcrm这个文件夹下就出 ...