CSDN博客

img zll01

vi的各模式功能键

发表于2008/9/28 10:27:00  541人阅读

分类: Linux

     vi命令行模式功能键
  
   I          切换到插入模式,此时光标当于开始输入文件处
   A        切换到插入模式,并从目前光标所在位置的下一个位置开始输入文字
   O        切换到插入模式,并从行首开始插入新的一行
   [ctrl]+[b]      屏幕往"后"翻动一页
   [ctrl]+[f ]      屏幕往"前"翻动一页
   [ctrl]+[u]      屏幕往"后"翻动半页
   [ctrl]+[d]      屏幕往"前"翻动半页
   0(数字0)        光标移到行首

   $                  光标移到行尾
   G                  光标移到文章的最后
   nG                光标移到第n行
   n<Enter>    光标向下移动n行
   /name          在光标之"后"查找一个名为name的字符串
   ?name         在光标之"前"查找一个名为name的字符串
   x                  删除光标所在位置的"后面"一个字符
   X                  删除光标所在位置的"前面"一个字符

   D                 从光标定位的行末删除文本 
   dd                删除光标所在行
   ndd              从光标所在行开始向下删除n行
   yy                 复制光标所在行
   nyy               复制从光标所在行开始向下n行
   P                  将缓冲区内的字符粘贴到光标所在位置(与yy命令搭配)
   U                  恢复前一个动作

 
   r //修改光标所在字元,r后接着要修正的字符。 
   R //进入取替换状态。 
   s //删除光标所在字元,并进入输入模式。 
   S //删除光标所在的列,并进入输入模式。 
   恢复 
   [ESC] u //可以恢复被删除的文字。 
   U //可以恢复光标所在列的所有改变。 
   移动组合键 
   行前分段并输入:小写o 
   行后分段并输入:大写O 
   vi命令模式中可用的移动键: 
   h---将光标向左移一个字符 
   j---将光标向下移一个字符 
   k---将光标向上移一个字符
   l---将光标向右移一个字符 
   w---将光标向前移一个单词 
   b---将光标向后移一个单词 
   e---将光标移到下一个单词之后 
   )---将光标移到下一句句首
   (---将光标移到上一句句首 
}---将光标移到下一段开始处 
{---将光标移到下一段开始处
^---将光标移到行内非空格的第一个字符 
H---将光标移到屏幕上第一行 
L---将光标移到屏幕上最后一行 在vi中滚动屏幕: 
z然后按回车----将光标所在的那一行移至屏幕顶部 
z然后按"."---将光标所在的那一行移至屏幕底部 
z然后按"."---将光标所在的那一行移至屏幕中部 

rc------c代表字符。光标下方的字符将被替换为r后面的字符 
R------R后键入的文本将改写当前文本,从光标所在位置开始,一直到按下Escape返回命令模式为止 
S------删除当前行,并开始在当前的空白行插入文本 
x------删除光标下方的字符,并将字符右移填空 
X------删除光标前的字符,并移动字符,令光标下方的字符来填空 
~------更改光标下方的字母的大小写 
J------将当前行和前一行连接起来,并删除因此而来的空行 
vi中的文件操作: 
ZZ------保存对当前文件的更改,然后退出vi 
:e filename-把指定文件载入vi进行编辑。如果指定文件不存在,将创建一个新文件
:e!-----丢失所有更改,并从硬盘中重载已保存的文件 
vi中的查找和替换命令 
/pattern--------pattern(样式)指代的是要查找的内容。vi将在文件中向前查找与指定内容匹配的第一样式 
/-----------重复上一次查找,在文件中查找下一个匹配样式 
?pattern--------pattern(样式)指代的是要查找的内容。vi将在文件中向后查找与指定内容匹配的第一样式 
?-----------重复上一次查找,在文件中查找与上一次查找内容匹配的样式 
%-----------把当前光标移至匹配的圆括号或方括号。对程序员来说,该命令非常有用 
:s/pattern1/pattern2--用pattern2替换当前行中与pattern1匹配的每个内容 
:%s/pattern1/pattern2--用pattern2替换整个文件中与pattern1匹配的每个内容 

    Vi底行模式功能键
   :w                将编辑的文件保存到磁盘中
   :q                退出Vi(系统对修改过的文件会给出提示)
   :q!               强制退出Vi(对修改过的文件不做保存)
   :wq              存盘后退出
   :w [filename]    另存一个命名为filename的文件

   :w!-----保存对当前文件的更改,如果有同名文件存在的话,就改写他 
   :set nu         显示行号,设定之后,会在每一行的前面显示对应行号
   :set nonu     取消行号显示
   :数字            将光标移动到与数字相同的行(如 :6  , 移动到第6行)
   :1,9y           复制从第1到第9行 

   yw-------把光标当前所在的单词移到缓冲区 
   y$-------把当前行及其以前的所有文本移到缓冲区

0 0

相关博文

我的热门文章

img
取 消
img