Vim 用法

来源:互联网 发布:mac虚拟机文件共享 编辑:程序博客网 时间:2024/06/05 03:11

一、 Linux→命令模式:Vim filename
1.一次移动一个光标
h         j    k           l
左        下  上           右
2.行内移动
0                             到行首(d0或d^删除至行首)
$                             至行尾(d$删除至行尾)
0=HOME               到行首
$=end                     至行尾
G                             到文件尾
50G                         到50行
gg                           到文件首
3.有小d/大D都是剪切(del  word)
dd                            剪掉当前行
5dd                          剪掉当前行起共5行
D                             剪空当前行
x                              删除一个字母     
dw                           剪除一个单词
4.undo撤消(多行时小u比大U管用)
u                            一次撤一行中的一个动作
U                            撤消一行中的所有动作   
5.复制粘贴
yy                            复制当前行
5yy                          复制5行
p                             粘贴(paste)
ZZ                           保存退出
ZQ                           不保存退出
........................................
6.vim中大小写转化:~或u或U(高级用法)
........................................
a、整篇文章大写转化为小写:gg→guG
gg                           到文件首
gu                           把选定范围全部小写
G                            到文件结束
......................................
b、整篇文章小写转化为大写:gg→gUG
gg                           到文件首
gU                           把选定范围全部大写
G                            到文件结束
================================================================================                                                               
二、 命令模式→输入模式:按ins/a/A/i/I/o/O/r/Ro1.插入
o                               在光标下加一空行并进入插入模式
O                             在光标上开一空行并进入插入模式
r                              替换一个字符   
R                             连续替换多个字符
2.文件内容查找:
/word                        从上而下在文件中查找字符串“word”
?word                        从下而上在文件中查找字符串“word”
n                               定位下一个匹配的被查找字符串
N                               定位上一个匹配的被查找字符串
3.命令模式→Visual Block:(高级用法)
按ctrl+v,举例:选中多行并添加注释
#vim→^v→I→#→ESC
#vim→set nu→^v→(100G:当前行到第100行)→I→#→ESC
===========================================================================
三、命令模式→末行模式
1.默认情况下Vim的搜索是大小写敏感的,:
:set ignorecase                   忽略大小写
:set noignorecase               不忽略大小写
:set nu或:set number          设置显示行号
:set nonu或:set nonumber   不显示行号
:999                                 移动光标到第999行
2.有彩色或无彩色(高级用法)
:syntax clear或:set syntax=off暂时关闭语法高亮
:syntax enable                     当前缓冲区打开语法高亮功能。
3.保存与退出
:w                                存盘不退出
:w!                               暴力存盘不退出
:w file1                         另存为file1
:q                                无脏数据时正常退出
:q!                               放弃脏数据并退出
:wq                              正常保存并退出
:wq!                             暴力存盘并退出
4.文件内容替换(高级用法)
命令                                 功能
:s /old/new                     当前行中找到的第一个old 替换为new
:s /old/new/g                  当前行中查找到的所有old 替换为new
:#,# s/old/new/g             行号“#,#”范围内替换所有的old为new
:% s/old/new/g               整个文件范围内替换所有的old为new
:s /old/new/c                  c命令:将对每个替换动作提示用户进行确认
5.文件加密与解密(高级用法)
------加密
vim t.c                             打开文件
:X                                 据提示操作//加密
:wq                                 保存退出------解密
------解密
vim t.c                             打开文件
:set key=                          解密
:wq                                 保存退出
===========================================================================                                                                                            
四、典型故障现象(图片见附件)一般是非正常关闭VI导致的,解决办法如下:
#rm .install.log===========================================================================                                                                                            
五、查看vim帮助
:help index
1. Insert mode                               |insert-index|
2. Normal mode                              |normal-index|
   2.1. Text objects                         |objects|
   2.2. Window commands                |CTRL-W|
   2.3. Square bracket commands      |[|
   2.4. Commands starting with 'g'     |g|
   2.5. Commands starting with 'z'     |z|
3. Visual mode                               |visual-index|
4. Command-line editing                  |ex-edit-index|
5. EX commands                            |ex-cmd-index|

0 0