zoukankan      html  css  js  c++  java
  • linux系统之-vi编辑器

    在linux系统使用中,掌握熟练的vi编辑器,可以提高linux工作效率。那么vi编辑器的使用方法有哪些呢?

    vi编辑器可在绝大部分linux发行版中使用。

    Vi编辑器的作用:
    创建或修改文件;
    维护linux系统中的各种配置文件。
    vi没有菜单,只有命令
    vi有三种基本工作模式,分别是:命令模式(command mode)、插入模式(insert mode)和末行模式(last line mode)

    命令模式下的操作一
    从命令模式进入插入模式:
    a:在光标后插入内容;
    A:在当前行的末尾插入内容;
    o:在当前行的下面插入内容;
    O:在当前行的上面插入内容;
    i:在光标处插入内容;
    I:在当前行的行首插入内容。

    命令模式下的操作二
    命令模式下的跳转命令一:
    上、下、左、右方向键移动;
    pageup/ctrl+b: 向上翻页;
    pagedown/ctrl+f: 向下翻页;
    home/^/数字0: 跳到当前行的行首;
    end/$: 跳到当前行的行尾;
    gg/1G: 跳到文件的第一行行首;
    G/shift+g: 跳到文件的最后一行;
    #G/#gg: 跳到文件的第#行。
    命令模式下的跳转命令二:
    H:跳到当前屏幕的第一行;
    M:跳到当前屏幕的中间;
    L: 跳到当前屏幕的最后一行;
    w:一个单词一个单词往右跳;
    b: 一个单词一个单词往左跳;
    f:后面跟想跳转的字母,例如f b,向右跳到最近的一个b字母处。

    命令模式下的操作三
    命令模式下的复制和粘贴命令:
    yy: 复制当前行;
    #yy:从当前行开始向下复制#行;
    yw: 从光标开始复制一个单词;
    y$: 复制光标处到行尾所有内容;
    y^: 复制光标处到行首所有内容;
    p: 将缓冲区中的内容粘贴到光标位置处之后;
    P: 将缓冲区中的内容粘贴到光标位置处之前。

    命令模式下的操作四
    命令模式下的删除命令:
    dd: 删除当前行;
    #dd:从当前行开始向下删除#行;
    dw: 从光标处开始删除一个单词;
    d$: 删除从光标处开始到行尾所有内容;
    d^: 删除从光标处开始到行首所有内容;
    x/del: 删除光标处一个字符。

    命令模式下的操作五
    命令模式下的撤消、替换命令:
    u: 撤消上一步操作;
    U: 取消对当前行所作的所有编辑;
    ctrl+r: 反撤消;
    ZZ: 保存当前的文件内容并退出VI编辑器;
    r: 替换,例如r b,将光标处所在的字符替换成b;
    R: 从光标处开始连续向右替换直到按esc键停止。

    命令模式下的操作六
    命令模式下文件内容的查找:
    /: 从光标处开始从上而下在文件中查找字符或字符串;
    ?: 从光标处开始从下而上在文件中查找字符或字符串;
    n: 定位下一个匹配的被查找的字符或字符串;
    N: 定位上一个匹配的被查找的字符或字符串。

    末行模式下的操作一
    保存和退出一:
    w: 保存;
    w aa.log: 把当前文件另存为aa.log并放到当前目录;
    w /tmp/ab.log: 把当前文件另存为ab.log放到/tmp目录下;
    q: 退出;
    wq/x: 保存后退出;
    q!: 不保存退出;

    保存和退出二(重点):
    10,15 w 10.log:把当前文件的10到15行,另存到当前目录的10.log文件中;
    10,15s /^/#/g:在10到15行的行首插入“#”;
    %s /^/#/g : 在所有行的行首插入“#”;
    10,15s /^#//g: 将10到15行的行首的“#”去掉。
    显示行号:set nu
    不显示行号:set nonu

    末行模式下的操作二
    文件内容替换(重点):
    s /old/new:将当前行中查找到的第一个字符串“old”替换为“new”;
    s /old/new/g:将当前行中查找到的所有字符串“old”替换为“new”;
    s /old/new/c:在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认;
    #,# s/old/new/g:在行号“#,#”范围内替换所有的字符串“old”为“new”;
    %s /^c/C/g:把当前文档中所有以c开头的内容替换成C;

    末行模式下的操作三
    打开新文件或读入其他文件内容:
    e /home/a.txt:在当前文件下,打开新的文件进行编辑;
    q!:两个文件都退出来了;

  • 相关阅读:
    域名解析速度好快了。
    ASP生成图形(数字验证码)
    PHP过滤字符
    “树人杯”暨第三届辽宁科技大学校园程序设计竞赛正赛F 最后一个是谁?(紫)
    “树人杯”暨第三届辽宁科技大学校园程序设计竞赛正赛G 又是一个小游戏(蓝)
    面试题06 判断二叉树后序遍历的结果 [树]
    [acm] 动态规划相关的题目 [ 个人 ]
    [面试备] 暴搜 or 二分图的经典升级 : hdu 1045 Fire Net 示例 [ 二分图 ]
    面试题02 从上往下打印二叉树 【树】[ water ]
    面试题05 树的子结构 [树]
  • 原文地址:https://www.cnblogs.com/nishuo666/p/8900341.html
Copyright © 2011-2022 走看看