免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 11915 | 回复: 5
打印 上一主题 下一主题

vi/vim 命令手册(高级篇) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-03-14 11:12 |只看该作者 |倒序浏览

                                                                                多文件编辑
   如果当前行还没有保存(并且 autowrite 未设置),则不能使用:e、:n和:rew命令。命令后面的!使得安全特性无效。
命令
功能
:e foo
停止对当前文件的编辑,开始编辑foo文件
:e! foo
同上,但是取消对当前文件的修改
:e!
装入当前文件的最近保存的内容
[Ctrl+^]
返回到最近编辑的文件
:n
编辑下一个文件(当用vi同时编辑多个文件时)
:set autowrite(aw)
在用:n切换到下一个文件之前自动保存当前文件
:rew
返回到文件列表的第一个文件(当用vi同时编辑多个文件时)
:r foo
把foo文件的内容插入当前行的下面
多窗口(vim)
命令
功能
:sq
把当前窗口拆分为两个
:new
打开一个新的空白窗口
:[Ctrl+w][Ctrl+w]
在窗口之间切换
:on
把当前窗口变为唯一的窗口
:q
退出当前窗口
:qa
退出所有窗口
:xa
保存并退出全部窗口
[Ctrl]+
增大窗口尺寸
[Ctrl]-
减小窗口尺寸
搜索与重复
   搜索模式pat可以时一个字符串,也可以是一个正则表达式。vi使用一套专用的字符序列来执行一行内的搜索。
命令
功能
/pat
向前搜索pat
?pat
向后搜索pat
/printf
向前搜索printf
?[0-0]$
向后搜索行尾的数字
/^#
向前搜索行首的#
n
按上次搜索方向重复搜索
N
按与前次搜索的相反方向重复搜索
:set wrapscan(ws)
继续搜索直至达到文件尾
:set ignorecase(ic)
搜索时不区分大小写
:set magic
保留正则表达式字符的意义
fc
在当前行向前搜索字符c
Fc
在当前行向后搜索字符c
;
在当前行重复上次向前搜索
,
在当前行重复上次逆向搜索
替换
   源模式s1也可以是正则表达式。使用欧冠地址时,"."代表当前行,"$"代表最后一行,"1,$"代表整个文件。
命令
功能
:.s/s1/s2
把当前行中第一次出现的s1替换为s2
:1,$s/s1/s2
把整个文件里的s1替换为s2
:1,$s/echo/printf/g
把全部的echo替换为printf
:1,$s/s1/s2/gc
按交互方式把全部s1替换为s2
:1,$s/#//g
删除文件中所有的“#”
:3,10s/^/#/g
在3至10行的行首插入“#”
:$s/$/;/
在最后一行的行尾插入“;”
:1,$s/s1/s2/g
把所有的s1替换为s2
:1,$s/HEAD//g
把所有的HEAD替换为
标志与书签
命令
功能
ma
设置一个标签a
'a
移动到标签a
"
在当前标志与前一个标志位置之间切换
重做与恢复
命令
功能
.
重复上次命令
u
取消上次的编辑命令(在vim里取消所有以前的命令)
[Ctrl+r]
重做上次取消的操作(只限于vim)
U
取消所有对当前行的操作
"4p
从缓冲区中恢复第4次最近的删除操作
缩写表示
命令
功能
:ab name stg
把name缩写为stg
:unab stg
删除stg缩写
:ab
列出所有的缩写
映射键
命令
功能
:map key commands
把key映射到commands
:map! key commands
在输入模式下把key映射到commands
:unmap key
取消命令模式下的key映射
:unmap! key
取消输入模式下的key映射
:map
显示命令模式下所有的映射
:map!
显示输入模式下的所有映射
与UNIX的接口命令
命令
功能
:!cmd
执行UNIX的cmd命令
:!%
把当前文件作为shell或perl脚本执行
:r !cmd
把cmd命令的结果插入到当前行的下面
:r !head -n 3 foo
把foo文件前三行内容插入到当前行的下面
sh
暂时退出UNIX shell 环境
[Ctrl+z]
暂停编辑(用fg命令可以返回vi编辑器)
:!cc%
编译正在编辑的C程序
:!javac %
编译正在编辑的Java程序
               
               
               
               
               
               
               
               
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/86302/showart_1862962.html

论坛徽章:
0
2 [报告]
发表于 2009-03-29 09:59 |只看该作者
说得很好!!!

论坛徽章:
0
3 [报告]
发表于 2010-03-10 20:41 |只看该作者
文章还可以

论坛徽章:
0
4 [报告]
发表于 2011-03-21 11:38 |只看该作者
支持拿来主义。mars_12): 顶你哦

论坛徽章:
0
5 [报告]
发表于 2012-01-22 01:49 |只看该作者
收藏收藏

论坛徽章:
13
15-16赛季CBA联赛之同曦
日期:2016-01-28 19:52:032015亚冠之北京国安
日期:2015-10-07 14:28:19NBA常规赛纪念章
日期:2015-05-04 22:32:03处女座
日期:2015-01-15 19:45:44卯兔
日期:2014-10-28 16:17:14白羊座
日期:2014-05-24 15:10:46寅虎
日期:2014-05-10 09:50:35白羊座
日期:2014-03-12 20:52:17午马
日期:2014-03-01 08:37:27射手座
日期:2014-02-19 19:26:54子鼠
日期:2013-11-30 09:03:56狮子座
日期:2013-09-08 08:37:52
6 [报告]
发表于 2012-04-22 18:02 |只看该作者
很实用,学习VIM 必备!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP