admin管理员组文章数量:1516870
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程序编辑器 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.betaflare.com/biancheng/1724511282a890573.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。


发表评论