对于VI的命令行,不需要特意的去记忆,写下来,让要用到的时候能找到就行

游标控制

h 游标向左移
j 游标向下移
k 游标向上移
l (or spacebar) 游标向右移
w 向前移动一个单词
b 向后移动一个单词
e 向前移动一个单词,且游标指向单词的末尾
( 移到当前句子的首部
) 移到下一个句子的首部
{ 移到当前段的首部
} 移到下一段的首部
[[ 移到当前区段的首部
]] 移到下一个区段的首部
0 移到当前行的首部
$ 移到当前行的尾部
^ 移到当前行第一个非空白字符的地方
+ or RETURN 移动到下一行的第一个字符
- 移动到上一行的第一个字符
n | 移动到当前行的字符n的地方
H 移动到当前屏幕的首部
M 移动到当前屏幕的中部
L 移动到当前屏幕的尾部
nH 移动到当前屏幕首部下的n行
nL 移动到当前屏幕尾部上的n行
Ctrl-F 移动到下一屏
Ctrl-B 移动到上一屏
Ctrl-D 向下移动半屏
Ctrl-U 向上移动半屏
   
   
z RETURN 刷新屏幕,调整屏幕,使当前的游标在刷新后的屏幕的首部(是不是不明白???不明白的话,试试就知道是什么意思了)
z . 刷新屏幕,调整屏幕,使当前的游标在刷新后的屏幕的中部
z - 刷新屏幕,调整屏幕,使当前的游标在刷新后的屏幕的尾部
Ctrl-L 刷新屏幕,不调整屏幕位置
Ctrl-R 刷新屏幕,不调整屏幕位置
/text 向下搜索text
/ 重复上次的搜索的内容向下搜索一次
?text 向上搜索text
? 重复上此搜索的内容向上搜索一次
n 重复上此的搜索,向下搜索
N 重复上此的搜索,向上搜索
/text/+n 移动到text所在行的下面n行
?text?-n 移动到text所在行的上面n行
   
   
nG 移动到n行
:n 移动到n行
G 移动在最后一行

内容编辑

A:当前行的尾部追加内容

i:游标前插入内容

I:游标后插入内容

o:在鼠标所在行的下面添加内容

O:在鼠标所在行的上面添加内容

ESC:退出编辑模式

Ctrl-T:移动到下一个tab

Backspace:向后移动一个字符

Ctrl-U:删除当前

cw:删除游标所在的字符,然后进入编辑模式

cc:删除游标所在的行,然后进入编辑模式

C:删除从游标所在的位置到行尾的字符,然后进入编辑模式

dd:删除当前行

ndd:删除第n行

D:删除当前行游标所在的位置后面的字符

dw:删除邮编所在的字符

d}:删除当前段剩余的字符

d^:删除游标前到行首的字符

c/pat:删除游标后面到第一次匹配字符间的内容

dn:删除游标后面到下一个匹配字符间的内容

dfa:删除当前行游标到匹配字符间的内容(匹配的字符也将被删)

dta:删除当前行游标到匹配字符间的内容(匹配的字符不被删)

dL:删除从游标到屏幕的最后一行之间的内容

dG:删除从游标到文件末尾之间的内容
J:连结上下两行的内容

p:在游标后面插入buffer中的内容

P:在游标前面插入buffer中的内容

rx:用x替换字符

Rtext:用text从游标开始处进行替换

u:撤销最后的改变

U:还原当前行的内容

x:向后删除游标所在位置的字符

X:向前删除游标前面的字符

nX:删除前面的n个字符,游标所在的字符将不会被删

.:还原最后的改变

~:反转字母的大小写

y:拷贝当前行到新的buffer

yy:拷贝当前行

"xyy:拷贝当前行的buffer名为x的buffer

ye:拷贝当单词的末尾

文件操作

:w 写文件
:w! 写文件,忽略警告信息
:w! file 覆盖文件,忽略警告信息
:wq 写文件之后退出编辑
:q 退出编辑器
:q! 强制退出编辑器
:w file 把文件的内容写到另一个文件
ZZ 退出编辑器,如果文件有改动,则保存再退出
:x 退出编辑器,如果文件有改动,则保存再退出
:n1,n2file 把n1行到n2行间的内容写到文件file
:n1,n2>> file 把n1行到n2行间的内容追加到文件file
:e file2 在当前文件的命令行模式下编辑file2
:e! 重新从磁盘加载文件
:e# 交替编辑文件
   
   
:n 编辑地下一行
:n! 编辑地下一行(忽略警告)
   
:r file 在游标后面插入文件
:r !command 在当前行的后面,插入运行命令后的输出内容
 
 

常用vi编辑器命令的更多相关文章

  1. 常用vi编辑器命令行

    游标控制: h 游标向左移 j 游标向下移 k 游标向上移 l(or spacebar) 游标向右移 w 向前移动一个单词 b 向后移动一个单词 e 向前移动一个单词,且游标指向单词的末尾 ( 移到当 ...

  2. vi编辑器命令

    Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配.注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Windows 下的 word 有排版功能.v ...

  3. vi 编辑器命令 (share)

    转自:http://man.ddvip.com/soft/vieditor/vi.html 一.Unix编辑器概述 编辑器是使用计算机的重要工具之一,在各种操作系统中,编辑器都是必不可少的部件.Uni ...

  4. 【Linux】vi编辑器命令

       1)进入vi的命令 vi filename :             打开或新建文件,并将光标置于第一行首 vi +n filename :          打开文件,并将光标置于第n行首 ...

  5. 常用vim编辑器命令行

    按ESC键 跳到命令模式,然后: :w 保存文件但不退出vi:w file 将修改另外保存到file中,不退出vi:w! 强制保存,不推出vi:wq 保存文件并退出vi:wq! 强制保存文件,并退出v ...

  6. linux vi 编辑器命令

    游标控制 h 游标向左移 j 游标向下移 k 游标向上移 l (or spacebar) 游标向右移 w 向前移动一个单词 b 向后移动一个单词 e 向前移动一个单词,且游标指向单词的末尾 ( 移到当 ...

  7. vi 编辑器命令

    插入命令 a append after the cursor A append after the current line i insert before the cursor I insert b ...

  8. 常用vi编辑命令

    在自己的博客里存起来,这么多全记住确实有点难,时不时的翻一翻到是可以的. 摘自:http://www.cnblogs.com/junw_china/articles/1708967.html 光标控制 ...

  9. vi编辑器命令大全

    >> from zhuhaiqing.info

随机推荐

  1. 爬虫(五)requests模块2

    引入 有些时候,我们在使用爬虫程序去爬取一些用户相关信息的数据(爬取张三“人人网”个人主页数据)时,如果使用之前requests模块常规操作时,往往达不到我们想要的目的,例如: #!/usr/bin/ ...

  2. [转] jquery作者John Resig编写的微模板引擎:JavaScript Micro-Templating

    I've had a little utility that I've been kicking around for some time now that I've found to be quit ...

  3. TP5.0 PHPExcel 数据表格导出导入(原)

    今天看的是PHPExcel这个扩展库,Comporse 下载不下来,最后只能自己去github里面手动下载,但有一个问题就是下载下来的PHPExcel没有命名空间,所以框架里面的use根本引入不进去, ...

  4. 关于sql的查询操作记录

    1.--读取库中的所有表名 select name from sysobjects where xtype='u'  --读取指定表的所有列名 select name from syscolumns  ...

  5. 如何安全的捂住你的AngelToken钱包

    Angel Token钱包的重要性 AngelToken基于区块链底层技术的去中心化.安全可靠的特点,开发了数字资产钱包,是行业领先的中心化token钱包和去中心化交易平台相结合的链数字资产智能钱包. ...

  6. Postgresql插入或更新操作upsert

    幂等性的一个要求是多次操作的结果一致.对于update操作,多次直接的结果都是最后update的值,是满足需求的. 但对于insert,如果已经插入,第二次会报错,duplicate error, 主 ...

  7. 获取Promise的值

    //response.text()是一个promise对象 //通过then方法获取promise存的数据 response.text().then(val => { errObj = JSON ...

  8. js dictionary

    转载的 1.dictionary例子 <script type="text/javascript" language="javascript"> v ...

  9. javeEE第五周

    一.定义 AndXML”(异步Javascript和XML),是指一种创建交互式网页应用的网页开发技术.AJAX = 异步JavaScript和XML(通用标记语言的子集),是一种用于创建快速动态网页 ...

  10. 201671010142 java内部类

    内部类可以拥有private访问权限.protected访问权限.public访问权限及包访问权限. 局部内部类是定义在一个方法或者一个作用域里面的类,它和成员内部类的区别在于局部内部类的访问仅限于方 ...