vi/vim经常使用命令
工作模式
插入命令
a 在光标后附加文本
A 在本行行尾附加文本
i 在光标前插入
I 在本行行首插入文本
o 在光标以下插入新的一行
O 在光标上面插入新的一行
定位命令
h 左移一个字符/ 向左的箭头键
j 下移一行 / 向下的箭头键
k 上移一行 / 向上的箭头键
l 右移一个字符 / 向右的箭头键
$ 移动到行尾
0(数字零)
移动到行首
H 移动到屏幕上端
M 移动到屏幕中央
L 移动到屏幕下端
Ctrl + f 向下翻一页 forward
Ctrl+b 向前翻一页 backward
Ctrl + d 向后翻半页 down
Ctrl + u 向前翻半页 up
高速定位
:set nu 显示行号
:set nonu
取消行号
gg 移动到第一行
G 移动到最后一行
nG 到第n行
:n 到第n行
删除命令
x 删除光标所在字符
nx 删除连续向后的n个字符
dd 删除所在光标所在一行。ndd删除n行
dG 删除从当前行到文件末尾全部的行,包括当前行
D 删除光标所在处到行尾的内容
:n1,n2d 删除n1~n2行
复制命令
yy。Y 复制当前行
nyy。nY 复制n行
dd 剪切当前行。ndd剪切当前行及一下的n行
p 粘贴在当前行下
P[大写] 粘贴在当前行上
替换或取消命令
r 代替光标所在处字符 样例:要将光标所在的字符替换为b。那么先按下r,在按下b就可以
R 从光标所在处開始替换字符,直到Esc结束
u 取消上一步操作 ,首先你没有保存过,文档还是在内存中。还没有同步到硬盘。
Ctrl + r 重做上一个操作
. (小数点) 反复前一个操作,比如反复删除、反复黏贴
替换或搜索命令
/string 向后搜索指定字符串string。搜索时忽略大写和小写 :set ic 。取消:set noic
n 从前往后翻
N 从后往前翻
?string 向上寻找字符串string
:%s/old/new/g
全文替换指定字符串,old为须要替换的关键词。
:n1,n2s/old/new/g
在一定范围内替换指定字符串
:%s/old/new/c
全文替换指定字符串。可是会询问用户是否确定
保存、退出
ZZ :wq的快捷键
:w new_filename
另存为指定文件
:wq! 强行保存改动并退出[root/文件全部者]
:q! 不保存退出
:[filename] 将文件另存为
:r[filename] 在编辑的数据中。读入还有一个文件的数据。即将filename这个文件的内容加入到光标所在行的后面
vi/vim经常使用命令的更多相关文章
- vi/vim 光标移动命令(转载)
转载至:https://www.cnblogs.com/Jacklovely/p/6015037.html vi/vim 光标移动命令 移动光标上:k nk:向上移动n行 9999k或gg可以移到第一 ...
- vi/vim 光标移动命令
vi/vim 光标移动命令 移动光标上:k nk:向上移动n行 9999k或gg可以移到第一行 G移到最后一行下:j nj:向下移动n行左:h nh:向左移动n列右:l nl:向右移动n列 w:光标以 ...
- vi/vim基本使用命令
vi/vim基本使用命令 一.总结 一句话总结:1.记住三种模式:命令行模式.插入模式.底行模式:2.记住两个按键功能:i和esc 二.vi/vim基本使用命令 vi/vim 基本使用方法本文介绍了v ...
- Linux vi/vim编辑器常用命令与用法总结
(一)vi/vim是什么?Linux世界几乎所有的配置文件都是以纯文本形式存在的,而在所有的Linux发行版系统上都有vi编辑器,因此利用简单的文字编辑软件就能够轻松地修改系统的各种配置了,非常方便. ...
- Linux环境下vi/vim编辑器常用命令
使用vi文本编辑器 配置文件是Linux系统中的显著特征之一,其作用有点类似于Windows系统中的注册表,只不过注册表是集中管理,而配置文件采用了分散的自由管理方式.那么如何使用Linux字符操作界 ...
- $Linux vi/vim编辑器常用命令与用法总结 (Markdown编辑版)
vi/vim是什么? Linux世界几乎所有的配置文件都是以纯文本形式存在的,而在所有的Linux发行版系统上都有vi编辑器,因此利用简单的文字编辑软件就能够轻松地修改系统的各种配置了,非常方便.vi ...
- vi/vim 查找替换命令
vi/vim 中可以使用 :s 命令来替换字符串.该命令有很多种不同细节使用方法,可以实现复杂的功能,记录几种在此,方便以后查询. :s/vivian/sky/ 替换当前行第一个 vivian ...
- vi/vim复制粘贴命令
1. 选定文本块.使用v进入可视模式,移动光标键选定内容. 2.复制的命令是y,即yank(提起) ,常用的命令如下: y 在使用v模式选定了某一块的时候,复制选定块到缓冲区用: ...
- vi/vim系统编辑命令使用技巧
01前言 在Linux系统中会有很多的文件信息,这些文件的内容如果需要编辑,就必须借助vi或vim编辑命令. vi是Linux命令行界面下的重要文字编辑器.vim是vi命令的增强版. [语法格式] v ...
随机推荐
- Function.prototype.call.apply结合用法
昨天在网上看到一个很有意思的js面试题,就跟同事讨论了下,发现刚开始很绕最后豁然开朗,明白过来之后发现还是挺简单的,跟大家分享下! 题目如下: var a = Function.prototype ...
- Android OpenGL库加载过程源码分析
Android系统采用OpenGL绘制3D图形,使用skia来绘制二维图形:OpenGL源码位于: frameworks/native/opengl frameworks/base/opengl 本文 ...
- 数据结构算法及应用——二叉树
一.二叉树性质 特性1 包含n (n> 0 )个元素的二叉树边数为n-1 特性2 二叉树的高度(height)或深度(depth)是指该二叉树的层数(有几层元素,而不是有层的元素间隔) 特性3 ...
- Android 多线程断点下载(非原创)
1.服务器的CPU分配给每条线程的时间片相同,服务器带宽平均分配给每条线程,所以客户端开启的线程越多,就能抢占到更多的服务器资源,这里在客户端开启多个线程来从服务器下载资源 2.fragment_ma ...
- MongoDb笔记(一)
1.Mongodb 数据库是动态生成的可以使用use 数据库名 来指定要使用的数据库,如果数据库不存在就自动生成一个 2.插入一个文档:db.foo.insert({"name": ...
- ORACLE/MYSQL/DB2等不同数据库取前几条记录
选取数据库中记录的操作是最基础最频繁的,但往往实际应用中不会这么简单,会在选取记录的时候加上一些条件,比如取前几条记录,下面就总结了如何在ORACLE/MYSQL/DB2等一些热门数据库中执行取前几条 ...
- parentViewController
获取创建自己的上一级视图 self.parentViewController 并且强制转换
- hdu 1042 N!(高精度乘法)
Problem Description Given an integer N(0 ≤ N ≤ 10000), your task is to calculate N! Input One N in ...
- node.js 环境搭建
一 官网下载安装包 : 1.http://www.nodejs.org/download/ 选择相应的包进行安装 2.安装express : npm install -g express -gener ...
- php getenv 和 putenv 用法
getenv 的功能是取得一个指定的环境变量. getenv('REMOTE_ADDR') 和 $_SERVER['REMOTE_ADDR'] 功能一样 但是当Web服务器API是ASAPI (IIS ...