vi命令(待更新)
第一部分:
0:光标到本行行首
$:光标到本行行尾
^:本行第一个非blank的位置
g_:本行最后一个非blank的位置
a:光标后插入(insert是光标前插入字符)
o:当前行后加入新行
O:当前行钱加入新行
cw:替换光标到光标所在单词结尾的字符
搜索
/pattern 从前往后搜索字符‘pattern’
?pattern 从后往前搜索字符‘pattern’
多个pattern时,使用n转移到下匹配位置
复制/粘贴
yy:复制当前行
p:粘贴(在当前行之后粘贴)
P:粘贴(在当前行之前粘贴)
y:从本行开始复制
$:在本行结尾结束复制
撤销:u
回滚上一步被撤销的:ctrl-r
保存/退出
:q 退出
:w 保存
:e /etc/passwd 打开文件passwd(当前文件必须已经保存)
:saveas /tmp/test/application (当前文件的修改保存到/tmp/test/application,当前文件不用save状态就可以)
:wq 保存退出
ZZ 保存退出
:q! 退出不保存
:qa! 强制退出当前所有正在编辑文件
:n 切换到下一个打开的文件
第二部分:
gg:到文本第一行
G:到文本最后一行
NG:到文本第N行
N+enter:向后移动N行,相对地
w:下一个单词的开头(单词间是.分割的,移到下一个.之后的单词)
e:下一个单词的结尾
W:下一个单词的开头(单词间是blank分开的,移到下一个blank之后的单词)
E:下一个blank后单词的结尾
d:删除
gu:小写
gU:大写
v:可视化选择(移动光标,文本被选中的部分,可以删除:d,可以复制:yy,可以变大小写:gU,gu)
vi命令(待更新)的更多相关文章
- 10个你必须掌握的Linux超酷VI命令技巧
大部分Linux开发者对vi命令相当熟悉,可是遗憾的是,大部分开发者都只能掌握一些最常用的Linux vi命令,下面介绍的10个vi命令虽然很多不为人知,但是在实际应用中又能让你大大提高效率. 在使用 ...
- 10个你必须掌握的超酷VI命令技巧
摘要:大部分Linux开发者对vi命令相当熟悉,可是遗憾的是,大部分开发者都只能掌握一些最常用的Linux vi命令,下面介绍的10个vi命令虽然很多不为人知,但是在实际应用中又能让你大大提高效率. ...
- 【转】10个你必须掌握的超酷VI命令技巧
摘要:大部分Linux开发者对vi命令相当熟悉,可是遗憾的是,大部分开发者都只能掌握一些最常用的Linux vi命令,下面介绍的10个vi命令虽然很多不为人知,但是在实际应用中又能让你大大提高效率. ...
- vim/vi 命令详解
在工作中,要对服务器上的文件进行的修改,可以使用ssh远程登录到服务器上,并且使用vi进行快速的编辑即可,在没有图形界面的环境下,要编辑文件,vi是最佳选择! vi命令是Linux中最经典的文本编辑器 ...
- linux vi 命令大全
进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...
- linux下vi命令大全
进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首 ...
- Linux下VI命令详细介绍
vi 是"Visual Interface" 的简称,它在Linux 上的地位就仿佛Edit 程序在DOS上一样.它可以执行输出.删除.查找.替换.块操作等众多文本操作,而且 ...
- VI 命令 gg 跳到第一行,dG 删除后面的所有内容
VI 命令 gg 跳到第一行,dG 删除后面的所有内容
- [转]Linux df 命令不更新磁盘数据空间使用情况的解决办法
当你已经找出并remove掉Linux系统中的大容量文件时,然后使用df -h查看使用情况依旧不变时.可尝试如下方法解决 1.找出那个进程占用了哪些已删除的文件 # 查看哪些被文件还在被哪个进程占用 ...
- (转)linux下vi命令大全
http://www.cnblogs.com/88999660/articles/1581524.html 进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n ...
随机推荐
- JavaWeb_(Jar)使用fastjson解析json和序列化对象
菜鸟教程 传送门 JSON官网 传送门 fastjson插件下载 传送门 序列化[百度百科]:序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程.在序列化期间,对 ...
- kali VMWOOLS的安装
别人的教程 https://jingyan.baidu.com/article/3ea51489992f1f52e71bba45.html
- Android学习_7/24
一. 活动的生命周期 1. 活动状态 运行:位于返回栈栈顶 暂停:不在栈顶,但仍可见 停止:不在栈顶,完全不可见 销毁:从栈中移除 2. 活动的生存期 ...
- Js基础知识(二) - 原型链与继承精彩的讲解
作用域.原型链.继承与闭包详解 注意:本章讲的是在es6之前的原型链与继承.es6引入了类的概念,只是在写法上有所不同,原理是一样的. 几个面试常问的几个问题,你是否知道 instanceof的原理 ...
- C1:DOM 元素的尺寸和位置
DOM元素的尺寸和位置 DOM 元素的尺寸 DOM.offsetWidth/offsetHeight: 包括内容区宽/高,padding,border,不包括margin.如果元素的box-sizei ...
- Rust Linking With C Library Functions
#[link(name = "c")] extern "C" { fn scanf(format: *const u8, ...); } fn main() { ...
- Scala学习(二)——高级特性
apply() 方法 apply方法是Scala提供的一个语法糖 类名+括号,调用对象的apply方法 对象名+括号,调用类的apply方法 对apply方法的简单测试:(其中,带 new -- cl ...
- SELECT list is not in GROUP BY clause and contains nonaggregated
安装了mysql5.7,用group by 查询时抛出如下异常 SQLSTATE[42000]: Syntax error or access violation: 1055 Expression # ...
- leetcode-easy-string-344 Reverse String
mycode class Solution(object): def reverseString(self, s): """ :type s: List[str] :rt ...
- 读取PC版微信数据库(电脑版微信数据库)内容
原始网址 https://www.cnblogs.com/Charltsing/p/WeChatPCdb.html 1.PC版微信的密钥是32位byte,不同于安卓版(7位字符串) 2.通过OD或 ...