Vi/Vim的快捷方式
1 vi/ vim键盘图





2 文字解说
进入编辑模式的6种方式:
i在光标前插入
I在行首插入
a在光标后插入
A在行末插入
o在下一行插入
O在上一行插入
删除字符
x 删除当前字符
X 删除前一个字符
行操作
dd 删除当前行
5dd从当前行开始算,删除5行
yy 拷贝当前行
8yy 拷贝当前开始的8行
p粘贴paste
linux中 you have newmail in /var/spool/mail/root是什么意思
一般这种情况mail的内容就只是一些正常的系统信息或者是比较重要的错误报告。如果你安装了mutt的话直接用这个命令就可以查看mail的内容(用root登陆先),没有装的话用cat /var/spool/mail/root查看(用root登陆先)。
在Normal Mode下
:%s/mmm/nnn/g 从在整个文件范围内把mmm替换成nnn。 g=gloabal
/www 搜索指定的字符串www
:3 光标定位在第3行
3 表格
|
一般模式 |
光标移动 |
|
h或 向左方向键 |
光标向左移动一个字符 |
|
j或 向下方向键 |
光标向下移动一个字符 |
|
k或 向上方向键 |
光标向上移动一个字符 |
|
l或 向右方向键 |
光标向右移动一个字符 |
|
Ctrl+f |
屏幕向前翻一页(常用) |
|
Ctrl+b |
屏幕向后翻一页(常用) |
|
Ctrl+d |
屏幕向前翻半页 |
|
Ctrl+u |
屏幕向前翻半页 |
|
+ |
光标移动到非空格符的下一列 |
|
- |
光标移动到非空格符的上一列 |
|
n<space> |
按下数字后再按空格键,光标会向右移动这一行的n个字符。例如20<space>,则光标会向右移动20个字符 |
|
0 |
(是数字0)动到这一行的第一个字符处(常用) |
|
$ |
移动到这一行的最后一个字符处(常用) |
|
H |
光标移动到这个屏幕最上方的那一行 |
|
M |
光标移动到这个屏幕中央的那一行 |
|
L |
光标移动到这个屏幕最下方的那一行 |
|
G |
光标移动到这个屏幕最后一行 |
|
nG |
移动到这个文件的第n行。例如20G,则会移动到这个文件的第20行(可配合:set nu) |
|
n<Enter> |
光标向下移动n行(常用) |
|
一般模式 |
查找与替换 |
|
/word |
在光标之后查找一个名为word的字符串(常用) |
|
?word |
在光标之前查找一个名为word的字符串 |
|
:n1,n2s/word1/word2/g |
在第n1与n2行之间查找word1这个字符串,并将该字符串替换为word2(常用) |
|
:1,$s/ word1/word2/g |
在第一行与最后一行之间查找word1这个字符串,并将该字符串替换为word2(常用) |
|
:1,$s/ word1/word2/gc |
在第一行与最后一行之间查找word1这个字符串,并将该字符串替换为word2,且在替换前显示提示符让用户确认(conform)(常用) |
|
一般模式 |
删除、复制与粘贴 |
|
x,X |
x为向后删除一个字符,X为向前删除一个字符(常用) |
|
nx |
向后删除n个字符 |
|
dd |
删除光标所在的那一整行(常用) |
|
ndd |
删除光标所在列的向下n列,例如,20dd则事删除20列(常用) |
|
d1G |
删除光标所在行到第一行的所有数据 |
|
dG |
删除光标所在列到最后一行的所有数据 |
|
yy |
复制光标所在行(常用) |
|
nyy |
复制光标所在列的向下n列,例如,20yy则是复制20列(常用) |
|
y1G |
复制光标所在列到第一列的所有数据 |
|
yG |
复制光标所在列到最后一列的所有数据 |
|
p,P |
p为复制的数据粘贴在光标下一列,P则为粘贴在光标上一列(常用) |
|
j |
将光标所在列与下一列的数据结合成一列 |
|
u |
恢复前一个动作(常用) |
|
编辑模式 |
|
|
i,I |
插入:在当前光标所在处插入输入的文字,已存在 |
|
a,A |
添加:由当前光标所在处的下一个字符开始输入,已存在的字符会向后退(常用) |
|
o,O |
插入新的一行:从光标所在行的下一行行首开始输入字符(常用) |
|
r,R |
替换:r会替换光标所指的那一个字符;R会一直替换光标所指的文字,直到按下Esc为止(常用) |
|
Esc |
退出编辑模式,回到一般模式(常用) |
|
命令行模式 |
|
|
:w |
将编辑的数据写入硬盘文件中(常用) |
|
:w! |
若文件属性为只读,强制写入该文件 |
|
:q |
退出vi(常用) |
|
:q! |
若曾修改过文件,又不想保存,使用!为强制退出不保存文件 |
|
:wq |
保存后退出,若为:wq!,则为强制保存后退出(常用) |
|
:w[filename] |
将编辑数据保存为另一个文件(类似另存新文档) |
|
:r[filename] |
在编辑的数据中,读入另一个文件的数据。即将filename这个文件内容加到光标所在行的后面 |
|
:set nu |
显示行号,设定之后,会在每一行的前面显示该行的行号 |
|
:set nonu |
与ser nu相反,为取消行号 |
|
n1,n2 w[filename] |
将n1到n2的内容保存为filename这个文件 |
Vi/Vim的快捷方式的更多相关文章
- 3、Linux基础--cp、mv、rm、alias、vi/vim命令
笔记 1.考试 1.判断网络是否通畅的命令 ping 2.定义系统提示组成的变量 PS1 3.Linux中目录从什么开始 根(/) 4.系统中目录路径类型有哪些,解释一下 绝对路径:以根目录作为参照物 ...
- Linux vi/vim(转载)
Linux vi/vim 所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主 ...
- vi/vim 的使用
vi/vim 的使用 基本上 vi/vim 共分为三种模式,分别是一般模式.编辑模式与指令列命令模式. 这三种模式的作用分别是: 一般模式:以 vi 打开一个档案就直接进入一般模式了(这是默认的模式) ...
- 解决vi/vim中粘贴会在行首多很多缩进和空格的问题
解决vi/vim中粘贴会在行首多很多缩进和空格的问题 secureCRT会将你原来的文本原封不动的按照字符串的样式发送给服务器.所以当你的服务器上的vim设置为autoindent的话,在i模式下,那 ...
- Linux下Vi/Vim使用笔记
启动和关闭vim vi 打开 Vi/Vim 打开 Vi/Vim 并加载文件 <file> vi <file> vim编辑器的三种模式:一般模式.编辑模式和命令行模式在一般模式中 ...
- vi/vim基本使用方法
vi/vim 基本使用方法本文介绍了vi (vim)的基本使用方法,但对于普通用户来说基本上够了!i/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所 ...
- Linux vi/vim
所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正 ...
- Linux上vi(vim)编辑器使用教程
vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...
- 【转载】-- vi/vim使用
vi/vim 基本使用方法本文介绍了vi (vim)的基本使用方法,但对于普通用户来说基本上够了!i/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所 ...
随机推荐
- Lucene学习笔记1(V7.1)
Lucene是一个搜索类库,solr.nutch和elasticsearch都是基于Lucene.个人感觉学习高级搜索引擎应用程序之前 有必要了解Lucene. 开发环境:idea maven spr ...
- FSFS和VDFS存储方式的区别
简单来说这个是VisualSVN基于FSFS文件系统格式扩展的.也就是说,分布式版本管理DVCS兴起之后,大家发现多个仓库的好处了,开始给SVN增加这个功能. 至于FSFS本身是SVN在2004年开始 ...
- 豹哥嵌入式讲堂:ARM Cortex-M开发之文件详解(8)- 镜像文件(.bin/.hex/.s19)
大家好,我是豹哥,猎豹的豹,犀利哥的哥.今天豹哥给大家讲的是嵌入式开发里的image文件(.bin, .hex, .s19). 今天这节课是豹哥<ARM Cortex-M开发之文件详解>主 ...
- 【开发技术】json
json(JavaScript Object Notation) JavaScript对象符号是一种结构化轻量级的数据传输格式,很多场合替代XML文件格式 JSON格式化校验:http://www.b ...
- CSS3 [attribute^=value] 选择器
设置 class 属性值以 "test" 开头的所有 div 元素的背景色: div[class^="test"] { background:#ffff00; ...
- 想要学习jQuery却不知从何开始?本文为你精选5个例子帮你快速成为jQuery大师
本文阅读对象:WEB前端开发初学者.jQuery初学者.JavaScript初学者 本文目的:jQuery真正入门.快速入门.快速搞清楚jQuery是什么,同时为你的jQuery大师之路开启第一道门. ...
- MySql Outer Join 简单化
查询from语句中的Outer Join可以在多种情况下被简化: 在解析阶段,右外连接操作可以被转变为等下ode值包含left join的操作,在一般情况下,转变: (T1, ...) RIGHT J ...
- python 程序退出方式
sys.exit() 执行该语句会直接退出程序,这也是经常使用的方法,也不需要考虑平台等因素的影响,一般是退出Python程序的首选方法. 该方法中包含一个参数status,默认为0,表示正常退出,也 ...
- MySQL中group_concat()函数的排序方法
group_concat()函数的参数是可以直接使用order by排序的.666..下面通过例子来说明,首先看下面的t1表. 比如,我们要查看每个人的多个分数,将该人对应的多个分数显示在一起,分数要 ...
- 在 ios 中的日期格式
var d="2017-1-1" ; new Date(d) //生成一个日期对象 这样写在 Android 中没有问题,但是在 ios 中,d 的格式不对,应该设为 2017- ...