编辑器之神Vim的使用

薄洪涛6年前Linux1188

在这个蔚蓝色的星球上,流传着两大神器的传说: 据说Emacs是神的编辑器,而Vim是编辑器之神。今天我们来学习下编辑器之神Vim的使用;

想当年我开始学习Vim的时候,最抓狂的事情莫过于怎么退出vim;以致最后强制关机...

1. 什么是Vim

Vim编辑器与linux的关系就如同在windows下有notepad(记事本)。在linux下vim的功能十分强大。

 

2. Vim的三种模式

命令模式:打开文件之后的模式就是命令模式

末行模式:命令模式下,输入英文冒号,进入末行模式,按esc回到命令模式

编辑模式:命令模式下,输入字母i,进入编辑模式,光标可以移动更改文件内容,按esc回到命令模式

 

3. Vim的常用命令

打开文件                      vim 文件名

打开文件                      vim +文件行数 文件名,打开并移动光标到文件的指定行数

打开文件高亮某字符     vim +/字符 文件名

注:打开文件后编辑器中输入英文冒号,进入末行模式,下面大部分操作在末行模式下进行

关闭文件                  输入:q,回车退出,不保存文件

强制关闭                  输入:q!,不保存

关闭并强制保存        输入:wq,回车退出,强制保存写入,并更新文件修改时间

关闭并强制保存        输入:x,当有文件被修改时保存,没修改时退出

另存为                     输入:w 文件名

显示行号                  输入:set nu,显示行号(临时)

取消高亮                  输入:noh

查找          输入/需要查找的字符,并高亮显示找到的字符,按下n向后切换,N向前切换

替换          输入:s/需要替换的字符/替换成的字符,只替换当前光标所在行的第一处

替换          输入:s/需要替换的字符/替换成的字符/g,替换光标所在行所有位置

全局替换    输入:%s/需要替换的字符/替换成的字符/g,替换文件所有可以换的地方

 

4. Vim的快捷键

光标移动

①将光标快速移动到文档的末行的开始,可以按下键盘G键(大写)。

②将光标快速移动到文档的首行的开始,可以按下键盘gg键(按2次小写的g键)。

③将光标快速移动到指定的行数开始,可以按下【数字键G】,例如定位到5行的开始,则按下5G。

④将光标以当前行为准,快速的向上或者向下移动指定的行数,可以按下【数字↑/↓】。

删除

①删除光标所在的行,可以按下键盘上的dd键(小写的d按2次),并且下一行会上移

②删除多行,可以以光标所在的行向下删除指定的行,则可以按下【数字dd】,并且下面的行也会上移。

③删除光标所在的行,但是删除完成之后当前行留空,可以按下D键(D字母大写)。

补充:在vim的命令模式中,删除命令其实本质是剪切操作,在粘贴的时候会被粘贴出来。

复制 & 粘贴

①复制光标所在的行,可以按下yy。

②复制光标所在行之后的指定行数(包括当前行),可以按下【数字yy】。

在vim中粘贴,可以按下键盘上的p键,将会以当前为准,在当前行下一行,粘贴出剪切板上的内容。

撤销

在vim中,按下键盘上的 u键,可以撤销上一步操作(类似于 ctrl + z)。

在vim中,按下ctrl + r,可以恢复你刚才撤销的操作(类似于ctrl + y)。

 

上面就是Vim的常用操作了,其他的操作还请大家自行探索


标签: vim

相关文章

mac下安装homebrew及开发工具

安装homebrew/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw...

阿里云服务器更改默认ssh端口

我们通常服务器默认的ssh端口是22,但是使用默认端口是不安全的,所以我们需要更改ssh端口1.修改ssh配置文件vi /etc/ssh/sshd_config找到 #Port 22 ,然后...

git常用命令

太简单的clone,push ,pull就不说了,每天都用的没必要总结git放弃本地更改,强制拉取远程更新git fetch --all git reset -...

mac下使用docker来构建不同版本的php环境并安装扩展

切换到mac后,我目前php环境是php7.3 ,但是一些老项目需要7.1 甚至5.6 的环境,特别是服务器上也有这种问题,所以我决定使用docker来部署不同的项目首先安装dockerbrew&nb...

负载均衡配置ssl证书的坑

负载均衡配置ssl证书的坑

上周的时候,公司有个域名需要配置下ssl证书,所以这个艰巨的任务落在我的头上,开始的时候,觉得没啥啊,就配个证书而已,分分钟的事儿于是开始配置了步骤如下:合并证书文件负载均衡器导入ssl证书,配置ac...

实现SVN自动化部署

实现SVN自动化部署

当我们修改程序并通过SVN上传到服务器后,我们想立马刷新页面看到更改之后的效果,这时候就要用到SVN自动化部署了,所谓的自动化部署,就是当SVN提交后自动更新文件到项目目录现在我们从头来部署一遍,看到...

评论列表

YanLan
2018-10-22 13:49:14

很有用

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。