1、Vi 编辑器的基本使用方法!1、 vi 的基本概念基 本 上 vi 可 以 分 为 三 种 状 态 , 分 别 是 命 令 模 式( command mode) 、 插入模式( Insert mode) 和底行模式( last linemode) ,各模式的功能区分如下:1) 命令行模式 command mode)控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入 Insert mode下,或者至U last line mode2) 插入模式( Insert mode)只有在Insert mode下,才可以做文字输入,按ESC键 可回到命令行模式。3) 底行模式(last line
2、mode)将文件保存或退出 vi , 也可以设置编辑环境, 如寻找字符串、列出行号等。不过一般我们在使用时把vi简化成两个模式,就是将底行模式( last line mode )也算入命令行模式( command mode) 。2、 vi 的基本操作a) 进入 vi在系统提示符号输入vi 及文件名称后, 就进入 vi 全屏幕编辑画面:$ vi myfile不过有一点要特别注意,就是您进入vi 之后,是处于( command mode) , 您要切换到 插入模式 ( Insertmode) 才能够输入文字。初次使用 vi 的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫,把自己气个半死,所以
3、进入vi 后,先不要乱动,转换到插入模式(Insert mode) 再说吧!b)切换至插入模式(Insert mode)编辑文件在命令行模式 ( command mode) 下按一下字母 i 就可以进入插入模式( Insert mode) ,这时候你就可以开始输入文字了。c) Insert 的切换您目前处于插入模式(Insert mode) ,您就只能一直输入文字,如果您发现输错了字!想用光标键往回移动,将该字删除,就要先按一下ESC键转到命令行模式(command mode) 再删除文字。d) 退出 vi 及保存文件在命令行模式(command mode) 下,按一下:冒号键进入Last l
4、ine mode ,例如:: w (输入 w 将文章以指定的文件名保存): wq (输入wq ,存盘并退出 vi): q! (输入q!, 不存盘强制退出 vi)3、命令行模式(command mode)功能键1) . 插入模式按i切换进入插入模式insert mode,按“ i”进入插入模式后是从光标当前位置开始输入文件;按a进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;按0进入插入模式后,是插入新的一行,从行首开始输入文字。2) . 从插入模式切换为命令行模式按ESC键。3) . 移动光标vi 可以直接用键盘上的光标来上下左右移动, 但正规的vi 是用小写英文字母 h 、 j
5、 、 k 、 l , 分别控制光标左、 下、上、右移一格。按 ctrl + b :屏幕往“后”移动一页。按ctrl+f :屏幕往“前”移动一页。按ctrl+ u :屏幕往“后”移动半页。按ctrl+ d :屏幕往“前”移动半页。按数字0 :移到文章的开头。按G :移动到文章的最后。按$ :移动到光标所在行的“行尾” 。按八:移动到光标所在行的“行首”按w :光标跳到下个字的开头按e :光标跳到下个字的字尾按b :光标回到上个字的开头按 #l :光标移到该行的第# 个位置,如:5l,56l。4) . 删除文字 x :每按一次,删除光标所在位置的“后面”一个字符。#x:例如,6x表示删除光标所在位
6、置的“后面”6) 个字符。 X :大写的X ,每按一次,删除光标所在位置的“前面”一个字符。 #X : 例如, 20X 表示删除光标所在位置的 “前面”20个字符。 dd :删除光标所在行。#dd :从光标所在行开始删除# 行7) . 复制 yw : 将光标所在之处到字尾的字符复制到缓冲区中。 #yw :复制 #个字到缓冲区 yy :复制光标所在行到缓冲区。#yy:例如,6yy表示拷贝从光标所在的该行“往下数” 6 行文字。 p :将缓冲区内的字符贴到光标所在位置。注意:所有与“ y”有关的复制命令都必须与“ p”配合才能完成复制与粘贴功能。8) . 替换 r :替换光标所在处的字符。R:替换
7、光标所到之处的字符,直到按下ESC键为止。9) . 回复上一次操作 u :如果您误执行一个命令,可以马上按下u ,回到上一个操作。按多次“ u”可以执行多次回复。10) . 更改 cw :更改光标所在处的字到字尾处c#w:例如,c3w表示更改3个字11) . 跳至指定的行Ctrl+g列出光标所在行的行号。#G :例如, 15G ,表示移动光标至文章的第15行行首。4、Last line mode下命令简介在使用last line mode之前,请记住先按ESC键确 定您已经处于command mode下后,再按:冒号即可进入 last line mode 。A) 列出行号set nu:输入r
8、set nuj后,会在文件中的每一行前面列 出行号。B) 跳到文件中的某一行 # : # 号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15 行。C) 查找字符 / 关键字 :先按 / 键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按 nJ会往后寻 找到您要的关键字为止。 ?关键字:先按?键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按 nJ会往前寻 找到您要的关键字为止。D) 保存文件w:在冒号输入字母wj就可以将文件保存起来。E) 离开 viq:按q就是退出,如果无法离开vi,可以在q后跟
9、一个!强制离开vi 。 qw :一般建议离开时,搭配 w 一起使用,这样在退出的时候还可以保存文件。5、 vi 命令列表1、下表列出命令模式下的一些键的功能: h左移光标一个字符l右移光标一个字符光标上移一行光标下移一行八光标移动至行首0数字“ 0” ,光标移至文章的开头G光标移至文章的最后$光标移动至行尾Ctrl+f向前翻屏Ctrl+b向后翻屏Ctrl+d向前翻半屏Ctrl+u向后翻半屏i在光标位置前插入字符在光标所在位置的后一个字符开始增加o插入新的一行,从行首开始输入ESC从输入状态退至命令状态x删除光标后面的字符#x删除光标后的个字符X(大写X) ,删除光标前面的字符#X删除光标前面的
10、 # 个字符dd删除光标所在的行#dd删除从光标所在行数的 # 行yw复制光标所在位置的一个字#yw复制光标所在位置的 # 个字yy复制光标所在位置的一行#yy复制从光标所在行数的 # 行p粘贴u取消操作cw更改光标所在位置的一个字#cw更改光标所在位置的 # 个字2、下表列出行命令模式下的一些指令w储存正在编辑的文件为wq储存正在编辑的文件为,并退出 viq!放弃所有修改,退出 viset nu显示行号/或?查找,在 / 后输入要查找的内容n与/ 或?一起使用,如果查找的内容不是想要找的关键字,按n 或向后(与/ 联用)或向前(与?联用)继续查找,直到找到为止。对于第一次用vi ,有几点注意要提醒一下:1、 用 vi 打开文件后, 是处于 命令行模式 ( command mode) ,您要切换到插入模式( Insert mode) 才能够输入文字。切换方法:在命令行模式(command mode)下按一下字母i就可以进入插入模式( Insert mode) ,这时候你就可以开始输入文字了。2、编辑好后,需从插入模式切换为命令行模式才能对文件进行保存,切换方法:按ESC键。3、保存并退出文件:在命令模式下输入:wq 即可!