• Linux下vim(文本编译器)的使用


    vim (文本编译器):

    Vim是从 vi 发展出来的一个文本编辑器。

    vim的一些命令操作:

    插入命令:

    a 在光标所在字符后插入
    A 在光标所在行尾插入
    i 在光标所在字符前插入
    I 在光标所在行首插入
    o 在光标下插入新行
    O 在光标上插入新行

    定位命令:

    :set nu(number) 设置行号
    :set nonu 取消行号
    gg 跳到第一行
    G 跳到最后一行
    nG 跳到第n行
    :n 跳到第n行
    $ 移至行尾
    0 移至行首

    删除命令:

    x 删除光标所在处字符
    nx 删除光标所在处后n个字符
    dd 删除光标所在行
    ndd 删除n行
    dG 删除光标所在行到文件末尾的内容
    D 删除光标所在行到行尾内容
    :n1,n2d 删除指定范围的行

    复制和剪切命令:

    yy 复制当前行
    nyy 复制当前行以下n行
    dd 剪切当前行
    ndd 剪切当前行以下n行

    p or P

    粘贴在当前光标所在行 下面 or 上面

    替换取消和搜索命令:

    r 取代光标所在处字符
    R 从光标所在处开始替换,摁esc结束
    u 取消上一步操作
    /string 搜索指定字符串(:set ic)忽略大小写
    n 搜索指定字符串的下一个出现位置
    :%s/old/new/g 全文替换指定字符串(/g可替换为/c)替换前询问
    :n1,n2s/old/new/g 在一定范围内替换指定字符串

    保存和退出命令:

    :w 保存修改
    :w new filename  另存为指定文件
    :wq 保存修改并退出
    ZZ 快捷键,保存修改并退出
    q! 不保存修改退出
    wq! 强制保存修改并退出(文件所有者或root)可使用

    移动光标(编辑模式)

    1、逐字符移动:

        h: 左

        l: 右

        j: 下

        k: 上

        #h: 移动#个字符

    2、以单词为单位移动

        w: 移至下一个单词的词首

        e: 跳至当前或下一个单词的词尾

        b: 跳至当前或前一个单词的词首

        #w: 移动#个单词

    3、行内跳转:

        0: 绝对行首

        ^: 行首的第一个非空白字符

        $: 绝对行尾

    4、行间跳转

        #G:跳转至第#行

        gg: 第一行

        G:最后一行

    5、末行模式

        .: 表示当前行

        $: 最后一行

        #:第#行

        +#: 向下的#行

     

    vim的一些使用技巧:

    导入命令执行结果:  

    :r !命令
    例如:
    :r 文件名
    :r /etc/issue    将/etc/issue中的内容导入到光标所在位置。
    :!which 命令   查看命令路径
    :r !date      将当前时间导入光标所在位置


    定义快捷键:

    map 快捷键 触发命令
    例如:
     定义快捷键 注释一行内容
    :map ^p(ctrl + v + p) I#<ESC>
    删除注释
    :map ^B 0x


    连续行注释:
    :set nu
    :n1,n2s/^/#/g (^表示行首)
    删除注释
    :n1,n2s/#//g  (删除所有以#开始的行删除  包括行内的#)
    :n1,n2s/^#//g (只删除行首的#)

    特殊:增加两个//字符
    :n1,n2s/^////g  行首加//字符


    替换:
    ab a b   输入a之后将a替换为b
    例如:
    ab mymail jhajdf@163.com  输入mymail之后将mymail替换为后面的邮箱


    所有的快捷键都可以提前写入配置文件内方便使用:(有可能不存在)
    root : /root/.vimrc
    普通用户: /home/username/.vimrc

     

  • 相关阅读:
    Java之正則表達式【使用语法】
    2015年创业中遇到的技术问题:71-80
    2015年创业中遇到的技术问题:71-80
    Kinect小小玩偶游戏----小小潜水员
    微信开发学习日记(三):6点经验
    微信开发学习日记(二):3个案例
    2015年创业中遇到的技术问题:61-70
    2015年创业中遇到的技术问题:61-70
    2次创业经验谈(想创业想做事的人不要错过)
    Kinect舒适区范围--UE4 的Blueprint测试范例
  • 原文地址:https://www.cnblogs.com/yoke/p/7077107.html
Copyright © 2020-2023  润新知