zoukankan      html  css  js  c++  java
  • ubuntu vi 使用

    文书编辑器介绍 [VI]

      vi ( m ) 在大多数的 unix 系统中 ( 包括 linux ) 都内建 vi ( m ) 编辑器。如果您即将成为 linux 系统管理者,或是长时间在 linux 环境中工作,您最好学会 vi ( m ),因为您迟早会使用到它,由其是系统出状况时。对新手而言,第一次使用 vi ( m ) 的过程是非常痛苦的,甚至讨厌它,因为它的使用方式与一般辑编器完全不同。但是,一但您学会如何操作它时,您会对它爱不释手,因为它的功能实在太强了。 vi ( m ) 就是这样,让人又爱又恨。

      事实上 linux 系统中的 vi 其实是 vim。vi 与 vim 的用法很像,因为它是 vi 的增强版,因此 vi 有什麽功能 vim 都有,而且 vim 新增许多 vi 没有的功能,而且比 vi 容易使用。

      7.4.1 vi ( m ) 的叁种模式简介

      一般模式

      在一般模式下,您所能进行的动作只有移动游标屏幕上的位置,标记、删除、搬移、复制字符或文字区块。此外您可以由命令模式进人输入模式虽命令列模式。

      输入模式

      只有在输入模式下,才可进行文字资料输入,按 ESC 键可以回到一般模式。

      命令列模式

      将文件写入或离开编辑器,亦可设定编辑环境,如寻找字串、列出行号等。

      7.4.2 vi ( m ) 的基本操作

      进人 vi

      在系统提示符号下输入 vi 及文件名称后即进入 vi 全屏幕编辑画面,且在一般模式下。输入模式下编辑文件:在一般模式下可按 'i' 或 'a' 或 'o' 叁键进入编辑模式。

      "i" insert - 在目前游标之处插入所要输入之文字

      "a" append - 在目前游标所在的下一行开始输入文字

      "o" open - 新增一行在游标的下,并从行首开始输人文字

      离开 vi 及保存

      在一般模式下可按 ':' 键进人命令列模式:

      :w filename ( 存入指定文件 )

      :wq ( 写入并离开 vi )

      :q! ( 强迫离开并放弃编辑的文件 )

      :n [ 文件 ] - 引入下一个文件

      :l,l2d - 删除自行l至行 l2 的文字

      :l,l2s/patternl/pattern2/g - 将行 l 至行 l2 的文字, patternl 的字串改为 pattern2 的字串,如无 g 则仅更换每一行所匹配的第一个字串,如有 g 则将每一个字串均做更换

      7.4.3 一般模式功能键简介

      移动游标

      h、j、k、l:分别控制游标左、下、土、右移一格

      Ctrl+b : 往前一页

      Ctrl+f : 往后一页

      G : 移到文件最后

      w : 移到下个 word 的开头

      b : 跳至上个 wore 的开头

      删除

      x:删除所在后面一个字符

      #x:ex:5x 表删除 5 个字符

      dd:删除游标所在之行

      #dd:例,5dd 表删除自游标算起之 5 行

      更改

      cw:更改游标处之字到此一单字之字尾处

      c#w:例,c3w表更改 3 个字

      取代

      r:取代游标处之字符

      R:取代字符直到按 ESC 为止

      复制

      yw:拷贝游标处之字到字尾至缓冲区

      P:把缓冲区之资料贴上来

      yy:拷贝游标所在之行至缓冲区

      #yy:ex:5yy,拷贝游标所在之处以下 5 行至缓冲区

      复原

      u:undo,复原至上一动作

      跳至指定之行

      g:列出行号,及相关信息

      7.4.4 命令列下命令简介

      注意:使用前请先按 ESC 键确定在一般模式下按 ':' 或 '/' 或 '?' 叁键即可进入命令列模式

      列出行号

      :set nu

      寻找字串

      /word ( 由首至尾寻找 ),按 n 可往下继续找

      ?word ( 由尾至首寻找 ),按 N 可往前继续找

      跳行

      :100 - 可跳至第 100 行

  • 相关阅读:
    CentOS6 破解登录密码
    CentOS 添加硬盘创建并挂载分区
    CentOS 安装开发工具包
    CentOS vim的使用
    CentOS tcpdump的使用实例
    CentOS7没有ifconfig/route/arp/netstat等命令的解决方案
    CentOS 查看系统 CPU 个数、核心数、线程数
    Linux系统中的load average
    Python基础-shelve模块
    Python基础-configparser和hashlib模块
  • 原文地址:https://www.cnblogs.com/webu/p/2816940.html
Copyright © 2011-2022 走看看