posts - 32,comments - 75,trackbacks - 0

1. 进入vi的命令                    

1)“vi filename  :  打开或编辑一个名为filename的文件,进入命令模式

2)“vi +n filename ”:打开文件,并将光标置于第n行首

3)“vi + filename ”:打开文件,并将光标置于最后一行首

4)“vi +/pattern filename”:打开文件,并将光标置于第一个与pattern匹配的串处

5)vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename

6)vi filename....filename ”:打开多个文件,依次进行编辑

 

2.退出vi:

    1) 命令模式下输入 “:q!” :强制退出,不保存此次修改结果

    2)命令模式下输入 “:wq” :保存当前内容后退出

 

3.进入命令模式 :

    1)进入vi时即为命令模式

    2)从输入模式下进入方法 “ESC

 

4. 进入输入模式

    1)“i”: 进入输入模式并在光标前插入文本

    2)“I”: 进入输入模式并在当前行首插入文本

    3)“a”: 进入输入模式并在光标后插入文本

    4)A”: 进入输入模式并在当前行为尾插入文本

    5)“o” :进入输入模式并在当前行之下新开一行插入文本

    6)“O” :进入输入模式并在当前行之上新开一行插入文本

 

5.进入最后一行模式

    命令模式下输入 “:”

 

6.删除(要在命令模式下进行)

    1) x” : 删除光标所在字符

    2) X” : 删除光标之前的一个字符

    3) dw” :删除从光标开始的一个单词

    4) dd” :删除光标所在行

    5)“do” :删至行首

    6)“d$” : 删至行尾

 

7.在vi中执行shell命令行(要在最后一行模式下进行)

    “:!command

   

8.搜索(命令模式下进行)

    1)“fa” :搜索a在当前行下一个所出现的位置

    2)“Fa” :搜索a在当前行上一个所出现的位置

    3)“ta” :搜索a在下一个出现位置之前的字符

    4)“Ta” :搜索a的上一个出现位置之后的字符

    5)“;”  :重复最近的一次搜索命令

    6)/pattern”:从光标开始处向文件尾搜索pattern

7)?pattern”:从光标开始处向文件首搜索pattern

8)n”:在同一方向重复上一次搜索命令

9)N”:在反方向上重复上一次搜索命令

 

9.替换(最后一行模式下进行)

    1)“:s/p1/p2/g”:将当前行中所有p1均用p2替代

    2)“:n1,n2s/p1/p2/g”:将第n1n2行中所有p1均用p2替代

    3)“:g/p1/s//p2/g”:将文件中所有p1均用p2替换

 

10.替换(命令模式下进行)

    1)“r”替换当前字符

    2)“R”替换当前字符及其后的字符,直至按ESC

 

11.移动光标(命令模式下进行)

    1)h”:光标左移一个字符

2)l”:光标右移一个字符

3)space”:光标右移一个字符

4)Backspace”:光标左移一个字符

5)k”或“Ctrl+p”:光标上移一行

6)j”或“Ctrl+n”:光标下移一行

7)Enter” :光标下移一行

8)w”或“W” :光标右移一个字至字首

9)b”或“B” :光标左移一个字至字首

10)e”或“E”:光标右移一个字至字尾

11))” :光标移至句尾

12)(” :光标移至句首

13)}”:光标移至段落开头

14){”:光标移至段落结尾

15)nG”:光标移至第n行首

16)n+”:光标下移n

17)n-”:光标上移n

18)n$”:光标移至第n行尾

19)H” :光标移至屏幕顶行

20)M”:光标移至屏幕中间行

21)L” :光标移至屏幕最后行

22)0:(注意是数字零)光标移至当前行首

23)$”:光标移至当前行尾

 

12. “ ~  ” :改变光标所在字符的大小写

 

13. . ” : 重复上一个操作

 

14.“ << ” :把当前行移到左边

 

15.“ >> ” :把当前行移到右边

 

16.给文件加锁(最后一行模式下)

    “:X” :在出现Enter key提示后输入密码。下次进入该文件时,格式

为“vi –x  filename”,出现提示,输入密码即可。

 

17.简化输入(最后一行模式下)

     “:ab string strings” : 编辑时用string来代替strings

      eg:“:ab rd Redstone Info : 当以后在文本中输入“rd”并回车时,“Redstone Info”就会出现代替rd

 

18.自定义键盘命令(最后一行模式下,比较危险,不建议使用)

        “:map keys new_seq

 

19.显示行号(最后一行模式下,coding时很管用)

    “:set number”显示行号

 

20.vi进行coding时查找某个函数

        首先在shell环境下用ctags命令对当前目录下的c原程序进行扫描,生成tags文件

        eg:$ ctags *.c

        然后,在vi中可以通过命令“:ta fun_name”,就可以直接打开函数fun_name所在的文件,并将光标置于函数开头

 

21.插入文件(最后一行模式下)

    “:r filename” :把文件filename插入到当前文件的当前位置中

 

22.直接跳转(最后一行模式下)

    “:n” : n为行数,直接跳转到第n

 

23.行复制(最后一行模式下)

    “:29 co 10 :将第2行到第9行的字copy到第11行(注意是第11行,不是第10行)

 

24.行剪切(最后一行模式下)

    “:29 m 10 :将第2行到第9行的字move到第11行(注意是第11行,不是第10行)

posted on 2006-02-23 20:10 fanta 阅读(2703) 评论(0)  编辑  收藏 所属分类: 其他

只有注册用户登录后才能发表评论。


网站导航: