[vim] vim入门
1. 概述
工欲善其事 必先利其器。vim是非常好用的文本编辑器,可以将它看作是vi的进阶。绝大多数Unix系统都会内置vi编辑器,vi是文本编辑器,vim是程序编辑器。相比vi,它可以根据文件的类型高亮文本,以方便程序设计。
2. 安装
现在一般unix系统都会安装vim了,如果你的系统真的没有vim,就需要自己安装了,vim编辑器需要安装三个包:
- vim-enhanced-7.0.109-7.el5
- vim-minimal-7.0.109-7.el5
- vim-common-7.0.109-7.el5
步骤如下(centos/redhat系统)
- 查看一下你本机已经存在的包,确认一下你的vim是否已经安装:
输入rpm -qa|grep vim这个命令,如何vim已经正确安装,则会显示上面三个包的名称 - 如果缺少了其中某个,比如说: vim-enhanced这个包少了,执行:
yum -y install vim-enhanced命令,它会自动下载安装。 - 如果上面三个包一个都没有显示,则直接输入命令:
yum -y install vim*
即可自动安装,完毕后,即可使用vim编辑器。
3. vim的模式
vim一共有三个模式
一般模式
使用vim打开/创建文件,移动光标,复制、粘贴、定位等
编辑模式
使用[
IiOoRrAa]进行入编辑模式,可以编辑文件内容,通过[esc]退回到一般模式指令模式
使用 [
:/?]进入指令模式,可以离开、保存文件等,通过[esc]退回到一般模式

** 图中要注意编辑模式和指令模式不能直接交互 **
4. vim使用示例
- 创建一个文本text.sh
vim test.sh如果test.sh存在则是打开文本,不存在就新建

- 编辑文件内容
i键盘敲击i,进入编辑模式,可以输入文本,注意左下角提示

- 退回到一般模式
[esc]键盘敲击esc按键,退出编辑模式

- 保存并退出
:wq分号进入指令模式,wq为保存文件并退出vim

5. vim快捷键(常用)
一般模式
快捷键 说明 移动光标 ←或 h向左移动光标 →或 l向右移动光标 ↓或 j向下移动光标 ↑或 k向上移动光标 [ctrl] + f向下翻页 [ctrl] + b向上翻页 -光标移动到上一行 +光标移动到下一行 0或^光标移动到当前行首 $光标移动到当前行尾 H光标移动到屏幕第一行 M光标移动到屏幕中间行 L光标移动到屏幕最后一行 gg光标移动到文档第一行 G光标移动到文档最后一行 nG光标移动到文档第n行 搜索 /word光标移动到屏幕最后一行 n重复前一个搜寻动作 :n1,n2s/word1/word2/g在n1到n2行之间搜索word1,并用word2全局替换 :1,$s/word1/word2/g第一行到最后一行搜索word1,并替换为word2 复制粘贴 x, Xx 为向后删除一个字符, X 为向前删除一个字符 dd删除整行 yy复制整行 p,Pp 为将已复制的数据在光标下一行贴上,P 则为贴在游标上一行! u回退 [ctrl]+r重做 .重复前一个动作 编辑模式
快捷键 说明 i,I进入插入模式(Insert mode) i 为『从目前光标所在处插入』, I 为『在目前所在行的第一个非空格符处开始插入』。 a,A进入插入模式(Insert mode):a 为『从目前光标所在的下一个字符处开始插入』, A 为『从光标所在行的最后一个字符处开始插入』 o,O进入插入模式(Insert mode):o 为『在目前光标所在的下一行处插入新的一行』; O 为在目前光标所在处的上一行插入新的一行! r, R进入取代模式(Replace mode):r 只会取代光标所在的那一个字符一次;R会一直取代光标所在的文字,直到按下 ESC 为止; [Esc]回到一般模式 区块选择 v字符区块选择 V行区块选择 [ctrl]+v回到一般模式 r, R进入取代模式(Replace mode):r 只会取代光标所在的那一个字符一次;R会一直取代光标所在的文字,直到按下 ESC 为止; [Esc]回到一般模式 指令模式
快捷键 说明 :w保存修改 :w!强制保存修改。到底能不能写入,还是跟你对该档案的档案权限有关! :q退出 :q!强制退出,不保存修改 :wq保存并退出 ZZ若档案没有更动,则离开,若档案已经被修改,则保存后离开! :w filename另存为文件filename :n1,n2 w [filename]n1到n2行保存到文件filename :! command执行命令

6. 总结
学到这里基本上你可以很轻松的使用vim了。虽然这里只是入门,但是已经覆盖日常操作80%,还有什么没介绍:
- 多文档操作
- 分屏操作
- 配置及插件安装(有时间再写一篇博文介绍)
[vim] vim入门的更多相关文章
- Vim新手入门资料和一些Vim实用小技巧
一些网络上质量较高的Vim资料 从我07年接触Vim以来,已经过去了8个年头,期间看过很多的Vim文章,我自己觉得非常不错,而且创作时间也比较近的文章有如下这些. Vim入门 目前为阿里巴巴高级技术专 ...
- vim+makefile入门编辑,编译,差错实例
vim+makefile入门编辑,编译,差错实例 vim makefile 编译 编写代码,一般在vim中编辑完后,输入:wq,在命令行下输入g++ hello.cc -o hello ,出现问题,打 ...
- vim使用入门设置
分为以下四步. 1,安装vim 2,安装git yum -y install vim git (Fedora/CentOS) /apt-get install vim git (Debian/Ubun ...
- 转载:Vim 配置入门
转载:Vim 配置入门 原文地址:http://www.ruanyifeng.com/blog/2018/09/vimrc.html 作者: 阮一峰 Vim 是最重要的编辑器之一,主要有下面几个优点. ...
- VIM | vim操作大全
1. 关于Vim vim是Linux下第二强大的编辑器. 虽然emacs是公认的世界第一,我认为使用emacs并没有使用vi进行编辑来得高效. 如果是初学vi,运行一下vimtutor是个聪明的决定. ...
- Vim 使用入门快捷键
Vim 和 Emac 都是利器啊,前段时间决定熟悉一套跨平台的编辑器,以便在 Win,Mac,Ubuntu 下都有相同的编辑体验. 于是尝试了一下 Vim,使用了一段时间,确实比 UE 之类的要高效. ...
- (大数据工程师学习路径)第二步 Vim编辑器----Vim快速入门
vim模式介绍 以下介绍内容来自维基百科Vim 从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆.几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数的编辑器使用了与Vim截 ...
- Vim快速入门
学习自:实验楼 Vim具有6种基本模式和5种派生模式 普通模式: vim启动后的默认模式,常用的编辑器命令诸如移动光标,删除文本. 普通模式中,有很多方法进入插入模式,常用 a 或 i 键. 插入模式 ...
- vim 基本命令入门
简介 vim是Linux 系统下类似于Windows的记事本的编辑器. vim 中经常使用的三种模式 一般模式:浏览文件内容. 插入模式:编辑文件内容. 底行模式:进行保存编辑内容,退出等操作. 基本 ...
随机推荐
- 用Wireshark简单分析HTTP通信
我们都学过TCP,HTTP的相关概念,本文借助协议分析工具Wireshark,让大家对一些概念眼见为实,权当温故而知新. 场景: 在Client(10.239.196.211)上通过web brows ...
- 使用 crosswalk-cordova 打包sencha touch 项目,再也不用担心安卓兼容问题!
国内的安卓手机品牌众多,安卓操作系统碎片化也很严重,我们使用sencha touch 开发的应用不可避免的出现了各种无解的兼容性问题. 有时候我就在想,有没有既能支持cordova,又能让我们把Chr ...
- java之抽象类
1.用abstract关键字来修饰一个类时,这个类叫做抽象类:用abstract来修饰一个方法时,该方法叫做抽象方法. 2.含有抽象方法的类必须被声明抽象类,抽象类必须被继承,抽象方法必须被重写. 3 ...
- google全球地址大全
https://github.com/justjavac/Google-IPs http://www.aol.com/依托于google的一个搜索,通过这个搜索
- [原]如何在Android用FFmpeg+SDL2.0解码显示图像
如何在Android上使用FFmpeg解码图像参考文章[原]如何在Android用FFmpeg解码图像 ,如何在Android上使用SDL2.0来显示图像参考[原]零基础学习SDL开发之在Androi ...
- JavaScript的9个陷阱及评点
1. 最后一个逗号 如这段代码,注意最后一个逗号,按语言学角度来说应该是不错的(python的类似数据类型辞典dictionary就允许如此).IE会报语法错误,但语焉不详,你只能用人眼从几千行代码中 ...
- 专门为码农定制的14款创意的T裇(T-Shirt)设计
T裇衫是人们在各种场合都可穿着的服装,如在T裇衫上作适当的装饰,即可增添无穷的韵味.通过图案直接反映人类的精神风貌,你可以把日常生活中的兴趣.习惯.喜怒哀乐.嗜好等展露无疑,张扬个性.秀出自我.对于码 ...
- PEP8 Python 编码规范
一 代码编排1 缩进.4个空格的缩进(编辑器都可以完成此功能),不使用Tap,更不能混合使用Tap和空格.2 每行最大长度79,换行可以使用反斜杠,最好使用圆括号.换行点要在操作符的后边敲回车.3 类 ...
- SQL Server 2012:SQL Server体系结构——一个查询的生命周期(第1部分)
为了缩小读取操作所涉及范围,本文首先着眼于简单的SELECT查询,然后引入执行更新操作有关的附加过程.最后你会读到,优化性能时SQLServer使用还原工具的相关术语和流程. 关系和存储引擎 如图所示 ...
- List<?>和List<T>的区别?
出自:https://www.zhihu.com/question/31429113