vi(vim)可以说是linux中用得最多的工具了,不管你配置服务也好,写脚本也好,总会用到它。但是,vim作为一个“纯字符”模式下的工具,它的操作和WINDOWS中的文本编辑工具相比多少有些复杂。这里,我根据自己个人的使用经验,整理了一套vim的操作以及记忆的方法,希望对大家的学习有所帮助。
VI的三种模式
1,命令模式 2,输入模式 3,末行模式
命令 执行的操作 记忆方法
:q 退出 quit
:w 存盘 write
:e 打开新文件
:r 读取文件到VI read
:! 强行
:set nu 显示行号 number
:set nonu 隐藏行号 no number
h j k l
左 下 上 右
Ctrl + f 翻到下一页(向前翻页) front
Ctrl + b 翻到上一页(向后翻页) back
Ctrl + u 向前翻半页
Ctrl + d 向后翻半页
^ 移到行头 往上就到行头了(象形)
$ 移到行尾 写完一行就要给一行的钱
w 下一个单词 word
b 前一个单词 behind(在。。。后面)
e 下一单词尾 end
#G 跳到某一行 大哥(G)说到哪就到哪
i 光标前插入 insert
a 光标后加入 add
A 在行末加入 在一个词后是小a,一个行后就是大A
o 另起一行加入 一个小鸡蛋(小o)掉下来了摔开了花
O 上一行加入 吐一个大泡泡(大O)飞上去破了
---------- c(吃掉)代表行内删除--------
cw 删除一个单词(一部分不包括空格) 吃掉一个 word
c$ 删除一行到行尾 刚写的一行被删了,钱也拿不到了
c^ 删除一行到行头 往上吃,一直吃到头
x 删除一个字符 看你不爽就打上“x”
---------- d 代表删除--------------
dd 删除一行 del dir
dw 删除单词到尾部(包括空格) del word
de 删除单词到尾部(不包括尾部空格) del end
d$ 删除当前到行尾的所有字符 del $(代表尾部)
d^ 删除当前到行首的所有字符 del ^(代表行首)
J 合并当前行 一个大钩子(J)把下面的一行拉到自己行尾
u 撤销上次操作 undo
U 撤销当前行所有操作 事情闹大了,得有个更大的UNDO才能恢复
Ctrl + r 恢复undo 前 recover
--------- y 代表复制到缓存中-----------
yy 复制当前行整行的内容到vi缓冲区
yw 复制当前光标到单词尾字符的内容到vi缓冲区
y$ 复制当前光标到行尾的内容到vi缓冲区
y^ 复制当前光标到行首的内容到vi缓冲区
p 读取vi缓冲区中的内容,并粘贴到光标当前的位置(不覆盖文件已有的内容)
/word 从上而下查 /是从上而下写的吧
?word 从下而上查找 字符在哪儿呢(?)回头找找吧
n 定位下一个匹配的 相当于向下查找下一个 next
N 定位上一个匹配的 相当于向上查找上一个
:s/1/2 搜索当前行第一个1并用2代替 search
:s/1/2/g 搜索当前行所有的1并用2代替 global
:#,#s/1/2/g 在#,#间搜索所有1并用2替换
:%s/1/2/g 在整个文档中将1替换为2 100%(全部)
:s/1/2/c 每次替换都给出提示确认 cue提示
vim 1.txt 2.txt 3.txt 同时打开多个文档
:args 显示多文件信息(会在末行提示当前打开了哪些档) are globals
:next 切换到下一个文件
:prev 切换到上一个文件
:first 定位首文件
:last 定位尾文件
Ctrl + ^ 快速切换到编辑器中切换前的文件
阅读(1029) | 评论(0) | 转发(0) |