Chinaunix首页 | 论坛 | 博客
  • 博客访问: 499356
  • 博文数量: 74
  • 博客积分: 750
  • 博客等级: 军士长
  • 技术积分: 1453
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-29 15:59
文章分类
文章存档

2014年(30)

2013年(8)

2012年(36)

分类: LINUX

2014-05-27 09:22:16

 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 + ^          快速切换到编辑器中切换前的文件
 
阅读(1061) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~