Vi编辑器的使用
Posted 默默爬坑中
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vi编辑器的使用相关的知识,希望对你有一定的参考价值。
移动光标的方法
h 表示的是向左
l 表示的向右
k 表示的是向上
j 表示的是想下
通过和组合一起可以同时移动多个 ,比如30j 表示向下移动30行
[Ctrl]+[f] 屏幕向下移动一页,相当于Page Down
[Ctrl]+[b] 屏幕向上移动一页,相当于Page Up
[Ctrl]+[d] 屏幕向下移动半页
[Ctrl]+[u] 屏幕向上移动半夜
[+] 光标移动到非空格符的下一列
[-](不是减号) 光标移动到非空格符的上一列
n<space> n代表的是数字 表示的是向右移动的字符 如果不够 会换行 20+space 光标向右移动20个
0或者是Home键 表示的是回到这一行的最前面处
$或者功能键[End] 移动到最后面的字符处
H光标移动到这个屏幕的最上方那一行的第一个字符
M光标移动到中央的那一行的第一个字符
L光标移动到这个屏幕的最下方的第一个字符
G移动到这个档案的最后一行
nG n为数字 移动到这个档案的第n行(不是相当于当前行)
gg 移动到这个档案的第一行 相当于1G
n<Enter> n为数字,光标向下移动n行
搜索与取代
/word word为字符 表示的光标之下是搜索某一个字符
?word word为字符 表示的光标之上是搜索某一个字符
n(英文字符) 表示的是重复前面的操作 /word 的时候就是再往下搜索 ?word再往上搜索
N(英文字符) 和n是相反的
:n1,n2s/word1/word2/g n1和n2为数字 表示的是在n1和n2行之间查找word1 使用 word2进行代替
:1,$s/word1/word2/g 代表的是从第一行和最后一行之间使用word1代替word2
:1,$s/word1/word2/gc 和上面的是同一个意思 但是会进行用户确定(confirm)是否需要取代
删除,复制与贴上
X,x 在一行字当中,x为向后
nx n为数字 连续向后删除n个字符,举例来讲 连续删除10个字符:[10x]
dd 删除游标所在的一整列
ndd n为数字,删除光标所在的向下n列,例如20dd 表示删除向下的20行
d1G 删除光标所在的第一行数据
dG 删除光标所在的最后一行数据
d$ 删除光标的那一行到最后一行的数据
d0 数字是0 删除光标所在处到该行最前面的字符
yy:复制游标所在的那一行(放入到缓冲中,需要使用p指令复制)
nyy:n为数字 复制游标所在后面的n行 (放入到缓冲中,需要使用p指令复制)
y1G :复制光标所在的第一行的所有的数据
yG:复制光标所在的最后一行的所有数据
y0:复制光标所在的那个字符到这行行首的所有数据
y$:复制光标所在的那个字符到这行行尾的所有的数据
p,P:p将已复制的数据在光标的下一行贴上,P则为上一行
J:将光标所在的列和下一列组成同一列
c:重复删除多个数据,如果向下的10行 10cj
u:复原前一个动作(相当于windows的Ctrl+Z)
[Ctrl]+r:重做上一个动作
“.”:重复前一个动作
进入编辑模式
i,I:进入插入模式(insert Mode)i为从目前光标所在处插入,I为目前所在行的第一个非空格符处开始插入
a,A:进入插入模式(insert Mode)a表示的是从光标的下一个字符开始插入 A表示的是从当前行的最后一个字符开始
o,O:进入插入模式(insert Mode)o在当前的光标的下一行
r,R:r只会取代光标所在的那个字符一次,R会一直取代(也就是向后一直覆盖)
指令模式
:w 保存文档
:w! 如果文件为只读 那么强制性的保存
:q 离开vi
:q! 如果修改过文档 但是不想保存
:wq 保存并且退出
:ZZ如果没有改动的话,则不储存离开,如果改动的了话 先保存然后再退出
:w [filename] 将编辑的数据储存到另外的一个文档
:r [filename] 在编辑的数据中,读入另外的一个档案的数据,将内容加到游标所在行后面
:n1,n2 w [filename] 将n1和n2行之间的数据写入到 另外的一个文档中
vim环境的变更
:set nu 显示行号,设定之后,会在每一行的前缀显示该行的行号
:set nonu与set nu相反 取消行号
以上是关于Vi编辑器的使用的主要内容,如果未能解决你的问题,请参考以下文章