Vim文件编辑命令(Linux)

Vim文件编辑命令

一、 vim的帮助指令      
  按下 <F1>      
  输入 :help <回车>      
  :help w <回车>      
           
 二、.vimrc .viminfo文件的配置      
  ~/.vimrc文件的配置      
  cp /usr/share/vim/vim70/vimrc_example.vim ~/.vimrc      
  vim打开文件时,默认会去读.vimrc的配置信息      
           
  ~/.viminfo文件的配置      
  set nu   显示行号    
  set ruler   在编辑过程中,在右下角显示光标位置的状态行
  set showmatch 设置匹配模式,类似当输入一个右括号时会匹配相应的那个左括号
  set list   显示分隔符  
  syntax on   语法高亮度显示  
  set fileencodings=utf-8,gbk      
  set termencoding=gbk      
三、vim的光标移动      
           
  vim的光标移动大家可能很清楚,不过有一些大家并不知道,却很方便的,我找了一些列出来。      
           
1 w(e)移动光标到下一个单词.      
2 b :移动光标到上一个单词.      
3 h :光标向左移动.   k  
4 j(Ctrl+n)光标向下移动. h   l
5 k(Ctrl+p) :光标向上移动.   j  
6 l :光标向右移动.      
7 space 按空格键,光标右移一个字符      
8 n<space> 数字后再按空格键,光标右移n个字符的距离      
9 Backspace 光标左移一个字符      
10 n<Backspace> 数字后再按空格键,光标左移n个字符的距离      
           
11 0 :移动光标到本行最开头.      
12 ^ :移动光标到本行最开头的字符处.      
13 $移动光标到本行结尾处.      
           
14 H :移动光标到屏幕的首行.      
15 M :移动光标到屏幕的中间一行.      
16 L :移动光标到屏幕的尾行.      
17 gg移动光标到文档首行.      
18 G :移动光标到文档尾行.      
19 [[ :移动光标到文档首行.      
20 ]] :移动光标到文档尾行.      
21 ctrl+f ( ctrl 键与 f 键一同按下) 本命令即 page down.      
22 ctrl+b ( ctrl 键与 b 键一同按下, 后同) 本命令即 page up.      
23 . :此命令相当好使, 它移动光标到上一次的修改行.      
           
四、vim编码        
  linux下设置中文      
     手动更改配置文件的命令:vi /etc/sysconfig/i18n       
     将LANG="zh_CN.UTF-8"修改为:LANG="zh_CN.GBK"      
     保存并关闭,运行下面的命令使配置生效:      
     source /etc/sysconfig/i18n       
           
  查看文件编码格式      
  :set fileencoding      
           
  设置相应的编码查看文件      
  :set fileencoding=gb18030      
  :set fileencodings=utf-8,gb18030,utf-16,big5      
  set fileencodings=utf-8,gbk      
           
五、vim 实用命令      
24 0)vim查找配对的括号      
  % 可以查找配对的括号 )]}   This ( is a test line with ('s, ['s ] and {'s } in it. ))
  1) 把光标放在文本一行中的任何一个有 (、[ 或 { 处。      
  2) 接著按 % 字符。      
  3) 此时光标的位置应当是在配对的括号处。      
  4) 再次按 % 就可以跳回配对的第一个括号处。      
           
25 1.高亮显示当前文本中,光标所在单词的所有单词:shift+*      
26 2.vim打开一个文件,如果文件在更新,如何显示到最新:输入":e"就搞定      
  3. 进入vi的命令      
27      vi filename 打开或新建文件,并将光标置于第一行首      
28      vi +n filename 打开文件,并将光标置于第n行首      
29      vi + filename 打开文件,并将光标置于最后一行首      
30      vi +/pattern filename 打开文件,并将光标置于第一个与pattern匹配的串处      
31      vi -r filename 在上次正用vi编辑时发生系统崩溃,恢复filename      
32      vi filename...filename 打开多个文件,依次编辑      
    vi a b c      
    :n跳至下一个文件,:e#回到刚才编辑的文件。      
           
33      vi -o filename...filename 用分割屏幕窗口方式同时打开多个文件      
    可以使用 ctrl + 两次按 w 或者ctrl + w 然后按上下键在上下窗口间切换      
34 4.vim列编辑      
  vim可以用列编辑:      
  如:        
  -----        
  123        
  456        
  789        
  -----        
  在每一个列的第二个字母前面加一个空格:      
           
  1) Ctrl+ v进入visual block模式      
  2) 按j向下选中2 5 8三个数字      
  3) 按I(注意是大写i),然后会让你在第一行写东西,打空格就可以输入空格,      
  4) 最后按Esc      
  搞定        
           
  5. 屏幕翻滚命令      
35 Ctrl+u 向文件首翻 半屏      
36 Ctrl+d 向文件尾翻 半屏      
37 Ctrl+f 向文件 尾翻一屏      
38 Ctrl+b 向文件首 翻一屏      
           
  6.插入文本类命令      
39 i 从光标所在位置前面开始插入内容       
40 I 从光标所在行的第一非空白字符前面开始插入内容       
41 a 从光标所在位置后面开始插入内容      
42 A 从光标所在行的行尾开始插入内容       
43 o 在当前行之下新开一行       
44 O 在当前行之上新开一行      
45 r 替换当前字符,r 后接着要替换的字符      
46 R 替换当前字符及其后的字符,直至按ESC      
47 s 删除当前字符,并进入输入模式      
48 S 删除当前行,并进入输入模式      
49 cw 删除当前字,并进入输入模式      
50 ncw nCW 删除当前字及其后的n-1个字,并进入输入模式      
51 cc 删除当前行,并进入输入模式 nccnCC 删除当前行及其后的n-1行,并进入输入模式      
           
  7.删除命令      
52 1)ndw 或ndW 删除光标处开始及其后的n-1个字      
53 2)d0 删 至行首      
54 3)d$ 删 至行尾      
55 4)dd 删除当前行      
56 5)ndd 删除当前行及其后n-1行      
           
  8.搜索及替换命令      
57 1)/pattern 从光标开始处向文件尾搜索pattern       
58 3)?pattern 从光标开始处向文件首搜索pattern       
59 4)n 在同一方向重复上一次搜索命令      
60 5)N 在反方向上重复上一次搜索命令      
61 6):s/p1/p2/g 将当前行中所有p1均用p2替代      
62 7):n1,n2s/p1/p2/g 将第n1至n2行中所有p1均用p2替代       
63 8):%s/p1/p2/g 将文件中所有p1均用p2替换      
64 9):%s/p1/p2/gc 将文件中所有p1均用p2替换,但在替换前显示提示字符给使用者确认(conform)是否需要替换  
65 10):n1,n2s/^/string/g 将第n1n2行的行首插入string       
66 11):%s/^/string/g 将所有行首插入string       
67 12):n1,n2s/$/string/g 将第n1至n2行的行尾插入string       
68 13):%s/$/string/g 将所有行的行尾插入string       
  注意: 其中ssubstitute%表示所有行,g表示global      
           
           
  9.选项设置 set      
69 all 列出所有选项设置情况      
70 list 显示制表位(Ctrl+I)和行尾标志($)       
71 nolist 不 显示制表位(Ctrl+I)和行尾标志($) nu或number 显示行号      
72 nonu 不显示行号      
73 wrap 折行(行内容比较多,一行显示不全时 ,折行显示)      
74 nowrap 不折行      
           
           
  10.行方式命令      
75 1):n1,n2 co n3 将n1行到n2行之间的内容拷贝到第n3行下      
76 2):n1,n2 m n3 将n1行到n2行之间的内容移至到第n3行下      
77 3):n1,n2 d 将n1行到n2行之间的内容删除      
78 4):e filename 打开文件filename进行编辑       
79 5):w 保存当前文件      
80 6):w filename 将编辑的数据储存成另一个文件(类似另存新档)      
81 7):n1,n2 w filename 将当前文件中n1至n2行的内容,保存到filename文件中      
82 8):r filename 将文件filename的内容,添加光标所在行的下一行,就是当前行的下面       
83 9):wq 保存当前文件并退出      
84 10):x 保存当前文件并退出      
85 11):q 退出vi       
86 12)u 复原前一动作(撤销)      
87 13)ctrl + r (恢复)      
           
  11.寄存器操作命令      
88 yy 将 当前行 的内容保存到寄存器中      
89 nyy 将当前行及其后n-1行的内容保存到寄存器中       
90 p 将寄存器中的内容粘贴到光标所处行的下一行      
91 P 将寄存器中的内容粘贴到光标所处行的上一行      
92 nyw 将光标处开始及其后的n-1个字 保存到寄存器中      
93 nyl 将光标处开始及其后的n-1个字符 保存到寄存器中      
94 y1G 将光标所在行至第一行的所有内容保存到寄存器中      
95 yG 将光标所在行至最后一行的所有内容保存到寄存器中      
96 dd 删除当前行,并将所删内容放到寄存器中      
97 ndd 删除当前行及其后n-1行,并将所删内容放到寄存器中      
98 d1G 删除当前行至第一行,并将所删内容放到寄存器中      
99 dG 删除当前行至最后一行,并将所删内容放到寄存器中      
           
           
100 %!xxd 二进制表示      
           
           
           
           
hexdump filename -c      
posted @ 2012-01-09 13:36  kkk3044147  阅读(2030)  评论(0编辑  收藏  举报