vi怎么用( 五 )


c) Insert 的切换您目前处于[插入模式(Insert mode)],您就只能一直输入文字,如果您发现输错了字!想用光标键往回移动,将该字删除,就要先按一下[ESC]键转到[命令行模式(command mode)]再删除文字 。d) 退出vi及保存文件命令行模式下保存并退出:输入ZZ在[命令行模式(command mode)]下,按一下[:]冒号键进入[Last line mode],例如:: w filename (输入 [w filename]将文章以指定的文件名filename保存): wq (输入[wq],存盘并退出vi): q! (输入q!,不存盘强制退出vi):x (执行保存并退出vi编辑器) 1). 插入模式按切换进入插入模式,按“i”进入插入模式后是从光标当前位置开始输入文件;按[a]进入插入模式后,是从当前光标所在位置的下一个位置开始输入文字;按[o]进入插入模式后,是插入新的一行,从行首开始输入文字 。
2). 从插入模式切换为命令行模式按[ESC]键 。3). 移动光标vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母[h]、[j]、[k]、[l],分别控制光标左、下、上、右移一格 。
按[ctrl]+[b]:屏幕往“后”移动一页 。按[ctrl]+[f]:屏幕往“前”移动一页 。
按[ctrl]+[u]:屏幕往“后”移动半页 。按[ctrl]+[d]:屏幕往“前”移动半页 。
按[gg]:移动到文章的首行 。(可能只在Vim中有效)按[G]:移动到文章的最后 。
按[$]:移动到光标所在行的“行尾” 。按[^]:移动到光标所在行的“行首”按[w]:光标跳到下个字的开头按[e]:光标跳到下个字的字尾按[b]:光标回到上个字的开头按[#l]:光标移到该行的第#个位置,如:5l,56l 。
Vi还提供了三个关于光标在全屏幕上移动并且文件本身不发生滚动的命令 。它们分别是H、M和L命令 。
(1)H命令该命令将光标移至屏幕首行的行首(即左上角),也就是当前屏幕的第一行,而不是整个文件的第一行 。利用此命令可以快速将光标移至屏幕顶部 。
若在H命令之前加上数字n,则将光标移至第n行的行首 。值得一提的是,使用命令dH将会删除从光标当前所在行至所显示屏幕首行的全部内容 。
(2)M命令该命令将光标移至屏幕显示文件的中间行的行首 。即如果当前屏幕已经充满,则移动到整个屏幕的中间行;如果并未充满,则移动到文本的那些行的中间行 。
利用此命令可以快速地将光标从屏幕的任意位置移至屏幕显示文件的中间行的行首 。例如,在上面屏幕显示的情况下(不论光标在屏幕的何处),在命令模式下,输入命令M之后,光标都将移到add这一行的字母a上 。
同样值得一提的是,使用命令dM将会删除从光标当前所在行至屏幕显示文件的中间行的全部内容 。(3)L命令当文件显示内容超过一屏时,该命令将光标移至屏幕上的最底行的行首;当文件显示内容不足一屏时,该命令将光标移至文件的最后一行的行首 。
可见,利用此命令可以快速准确地将光标移至屏幕底部或文件的最后一行 。若在L命令之前加上数字n,则将光标移至从屏幕底部算起第n行的行首 。
同样值得一提的是,使用命令dL将会删除从光标当前行至屏幕底行的全部内容 。4). 删除文字[x]:每按一次,删除光标所在位置的“后面”一个字符 。
[#x]:例如,[6x]表示删除光标所在位置的“后面”6个字符 。[X]:大写的X,每按一次,删除光标所在位置的“前面”一个字符 。
[#X]:例如,[20X]表示删除光标所在位置的“前面”20个字符 。[dd]:删除光标所在行 。
[#dd]:从光标所在行开始删除#行5). 复制[yw]:将光标所在之处到字尾的字符复制到缓冲区中 。[#yw]:复制#个 。