Vi 在初始启动后首先进入编辑模式,这时用户可以利用一些预先定义的按键来移动光标、删除文字、 复制或粘贴文字等。这些按键均是普通的字符,例如 l 是向右移动光标,相当于向右箭头键,k 是 向下移动光标,相当于向下箭头键。在编辑模式下,用户还可以利用一些特殊按键选定文字,然后 再进行删除、或复制等操作。 当用户在编辑模式下键入 i, a, o 等命令之后,可进入插入模式;键入 : 可进入命名模式。 在插入模式下,用户随后输入的,除 Esc 之外的任何字符均将被看成是插入到编辑缓冲区中 的字符。按 Esc 之后,从插入模式切换到编辑模式。 在命令模式,Vi 将把光标挪到屏幕的最下方,并在第一个字符的位置显示一个 :(冒号)。这时, 用户就可以键入一些命令。这些命令可用来保存文件、读取文件内容、执行 Shell 命令、设置 Vi 参数、以正则表达式的方式查找字符串或替换字符串等。 编辑模式
在LINUX里面 编辑模式(Command mode): 在shell环境(提示符为$)下输入vi,进入编辑模式。在该模式下,用户可以输入各种合法的vi命令,对文档进行一些操作(如删除单个字符,删除一行字符,删除一个区块等)。从键盘上输入的任何字符都被当做编辑命令来解释,但所输入的命令并不在屏幕上显示出来。若输入的字符不是vi的合法命令,vi会响铃报警。 光标定位: ??h,j,k,l 左移、下移、上移、右移 ??Ctrl+b将屏幕向文件首方向翻滚一整屏(PgUp) ??Ctrl+f将屏幕向文件尾方向翻滚一整屏(PgUp) ??H 将光标移至当前屏幕首行的行首 ??nH 将光标移至当前屏幕第n行的行首 ??M将光标移至屏幕显示文件中间行的行首 ??L将光标移至当前屏幕最底行的行首 ??nL将光标移至当前屏幕倒数第n行的行首 ??0,^将光标移至所在行的行首 ??$将光标移至所在行的行尾 替换和删除: ??rc用字符c替换光标所指向的当前字符 ??x删除光标所指向的当前字符 ??dw删除一个单词。若光标在词中间,则删除光标所在位置开始至词尾并连同空格 ??dd删除光标所在行 ??ndd删除当前开始第n行替换和删除: ??rc用字符c替换光标所指向的当前字符 ??x删除光标所指向的当前字符 ??dw删除一个单词。若光标在词中间,则删除光标所在位置开始至词尾并连同空格 ??dd删除光标所在行 ??ndd删除当前开始第n行 复制和粘贴: ??yy将当前行复制到缓冲区 ??nyy将当前开始的第n行复制到缓冲区 ??p将复制的内容粘贴在光标所在的位置 4.其他编辑命令: ??/aa搜索字符串aa ??n向相同方向继续搜索 ??N向反方向继续搜索 ??u撤消 ??.重复执行上一条命令 ??ZZ保存并退出 ??ZQ不保存退出
在linux里面
编辑模式(command mode): 在shell环境(提示符为$)下输入vi,进入编辑模式。在该模式下,用户可以输入各种合法的vi命令,对文档进行一些操作(如删除单个字符,删除一行字符,删除一个区块等)。从键盘上输入的任何字符都被当做编辑命令来解释,但所输入的命令并不在屏幕上显示出来。若输入的字符不是vi的合法命令,vi会响铃报警。 光标定位: ?h,j,k,l 左移、下移、上移、右移 ?ctrl+b将屏幕向文件首方向翻滚一整屏(pgup) ?ctrl+f将屏幕向文件尾方向翻滚一整屏(pgup) ?h 将光标移至当前屏幕首行的行首 ?nh 将光标移至当前屏幕第n行的行首 ?m将光标移至屏幕显示文件中间行的行首 ?l将光标移至当前屏幕最底行的行首 ?nl将光标移至当前屏幕倒数第n行的行首 ?0,^将光标移至所在行的行首 ?$将光标移至所在行的行尾 替换和删除: ?rc用字符c替换光标所指向的当前字符 ?x删除光标所指向的当前字符 ?dw删除一个单词。若光标在词中间,则删除光标所在位置开始至词尾并连同空格 ?dd删除光标所在行 ?ndd删除当前开始第n行替换和删除: ?rc用字符c替换光标所指向的当前字符 ?x删除光标所指向的当前字符 ?dw删除一个单词。若光标在词中间,则删除光标所在位置开始至词尾并连同空格 ?dd删除光标所在行 ?ndd删除当前开始第n行 复制和粘贴: ?yy将当前行复制到缓冲区 ?nyy将当前开始的第n行复制到缓冲区 ?p将复制的内容粘贴在光标所在的位置 4.其他编辑命令: ?/aa搜索字符串aa ?n向相同方向继续搜索 ?n向反方向继续搜索 ?u撤消 ?.重复执行上一条命令 ?zz保存并退出 ?zq不保存退出