admin 管理员组文章数量: 887021
1.vi和vim
vi:一种基本的文本编辑器,所有UNIX Like系统都会内置,很多的软件编辑接口会主动调用,是老式的文字处理器,不过功能已经很齐全了。
vim:可以视为vi的高级版本,具有程序编辑的能力,可以主动以字体颜色或底线等方式来显示一些特殊的信息,辨别语法的正确性,方便程序设计,vim的官方网站自己也说vim是一个“程序开发工具”而不是文字处理软件,因为vim里面加入了很多额外的功能,例如支持正则表达式的查找架构,多文件编辑,块复制等。
2.vi的使用
- 一般模式
可以使用上下左右来移动光标,可以删除整行,复制粘贴文件数据等,但是无法编辑文件内容。 - 编辑模式
在一般模式下按“i,I,o,O,A,a,r,R”等任何一个字母之后才会进入编辑模式。esc退出。 - 命令行模式
一般模式中输入“: / ?”3个中任何一个按钮,就可以将光标移动到最下面的那一行。在这个模式当中,可以提供查找数据的操作,而读取,保存,大量替换字符,离开vi,显示行号的操作就是在这个模式中完成的。
3.按键说明
第一部分:一般模式的按钮说明
h或← | 光标向左移动一个字符 |
---|---|
j或者↓ | 下 |
k或者↑ | 上 |
l或者→ | 右 |
CTRL+f | 下一页 |
CTRL+b | 上一页 |
CTRL+d | 向下移动半页 |
CTRL+u | 向上移动半页 |
+ | 光标移动到非空格符的下一行 |
- | 光标移动到非空格符的上一行 |
n | 20光标向后面移动20个字符距离 |
0或者End | 光标移动到这一行最前面 |
$或者Home | 光标移动到这一行最后面 |
H | 光标移动到当前屏幕的最上方那一行的第一个字符 |
M | 光标移动到当前屏幕的最中间那一行的第一个字符 |
L | 光标移动到当前屏幕的最下方那一行的第一个字符 |
G | 移动到这个文件的最后一行 |
nG | 移动到这个文件的第n行 |
gg | 移动到这个文件的第一行 |
N[enter] | n为数字,光标向下移动n行 |
/word | 向下查找 |
?word | 向上查找 |
n | 英文n按键,重复上一个查找 |
N | 英文N按键,反向上一个查找 |
xX | 英文x按键,向后删除一个字符,X向前~ |
nx | 连续向后删除n个字符 |
dd | 删除光标所在的那一行 |
ndd | 删除光标所在的那一行向下n行 |
d1G | 删除光标所在的那一行到第1行的所有内容 |
dG | 删除光标所在到最后一行的所有数据 |
d$ | 删除光标所在的那一处到该行最后一个字符 |
d0 | 删除光标所在的那一处到该行第一个字符 |
yy | 复制光标所在的那一行 |
nyy | 复制光标所在的那一行向下n行 |
y1G | 复制光标所在的那一行到第一行的所有数据 |
YG | 复制光标所在的那一行到最后一行的所有数据 |
Y0 | 复制标所在的那一处到该行行首的所有数据 |
Y$ | 复制光标所在的那一处到该行行尾的所有数据 |
p,P | p为将已经复制的数据在光标的下一行粘贴,P为粘贴在上一行 |
j | 将光标所在行与下一行的数据结合成一行 |
c | 重复删除多个数据,例如向下删除10 行[10cj] |
u | 复原前一个操作 |
CTRL+r | 重做下一个操作 |
第二部分:一般模式切换到编辑模式的可用按钮说明
i,I | 进入插入模式(insert mode)i为从目前光标处插入,I为在目前所在行的第一个非空格符处开始插入 |
---|---|
a,A | 进入插入模式(insert mode)a为从目前光标所在处的下一个字符处开始插入,A为从光标所在行的最后一个字符处开始插入 |
o,O | 进入插入模式(insert mode)o为从目前光标所在处的下一行开始插入新的一行,O为从光标所在行的上一行开始插入 |
r,R | 进入替换模式(Replace mode)r为只会替换光标所在那一个字符一次,R会一直替换光标所在的文字,直到按下esc键为止 |
esc | 退出编辑模式,回到一般模式当中 |
第三部分 :从一般模式切换到命令行模式
:w | 将编辑的数据写入硬盘文件中 |
---|---|
:w! | 若文件属性为可读时,强制写入该文件,不过是不是真的可以写入,还是要看你对该文件的权限是如何 |
:q | 离开vi |
:q! | 强制离开vi,若修改不保存 |
:wq | 保存后离开(wq!) |
ZZ | 若文件没有更动,不保存离开,若已经更动,保存离开 |
:w[filename] | 将编辑的数据保存成一个另一个文件 |
:r[filename] | 在编辑的数据中,读入另一个文件的数据,即将“filename”这个文件的内容加到光标所在行后面 |
:n1,n2 w[filename] | 将n1到n2的内容保存成filename这个文件 |
:!command | 暂时离开vi到命令行模式下执行command的显示结果。例如:“:! ls /home”即可在vi中查看/home下ls输出的文件信息 |
:set nu | 显示行号,设置之后,会在每一行的前缀显示该行的行号 |
set nonu | 取消行号 |
CTRL+z vim会到后台去执行
版权声明:本文标题:Vim程序编辑器 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1724511283h753412.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论