vim 编辑器 全屏编辑器 模式化编辑器
vi:Visual Interface
vim:VI iMproved vi增强版
vi模式:
    编辑模式(命令模式)(默认处于编辑模式)
        Ctrl z 暂停运行程序
        ZZ 保存退出
    输入模式
    末行模式
        :q 退出
        :w 保存
        :q! 强行退出
        :w! 强行保存
        :x = :wq
        :# 光标跳至#行
模式转换:
    编辑--》输入:
        i 当前光标前面输入
        a 当前光标后面输入
        o 当前光标行的下面新建一行输入
        I 当前光标行的行首输入
        A 当前光标行的行尾输入
        O 当前光标行的上面新建一行输入
    输入--》编辑;
        ESC键
    编辑--》末行:
        :
    末行--》编辑:
        ESC键
    
语法:
打开文件
    vim /path/to/somefile
        +12 打开文件处在第12行
        + 打开文件后处在最后一行
        +/PATTERN 打开文件后处在第一次被模式匹配到行上

移动光标(编辑模式):
    一下命令均支持与数字组合
    h 向左移
    j 向下移
    k 向上移
    l 向右移
    
    #h 向左移#个字符
    
    w 向右移一个单词到词首
    e 向右移一个单词到词尾
    b 向左移一个单词到词首
    
    0 跳至行首(绝对行首)
    ^ 跳至行首到第一个非空白字符
    $ 跳至行尾(绝对行尾)
    
    G 跳至最后一行
    
翻屏
    Ctrl + f 向下翻
    Ctrl + b 向上翻
    Ctrl + d 向下翻半屏
    Ctrl + u 向上翻半屏
    
删除
    x 删除单个字符
    #x 删除光标所在处及向后共#个字符
    d 准备删除(与跳转命令使用)
        #dw,#de,#db
        dd 删除光标所在行
            #dd
        末行模式下:
            StartLine,EndLine
                1,100d
                .,100d .表示当前行
                100,$d $表示最后一行
                100,+2
                
粘贴
    p (小写) 如果删除或复制的为整行,则粘贴至光标所在行的下方,如果为非整行,则粘贴在光标后面
    P (大写) 相反
    
复制 y 用法同d

修改 c 用法同d 先删除内容,再转为输入模式

替换 r 替换单个字符
     R 转换到替换模式
    
撤销 u 默认撤销50次
        #u 撤销最近#次操作
        
        撤销撤销 Ctrl + r
        
重复此前一次编辑操作 .

可视化操作
    v (小写) 按字符
    V (大写) 按行
    
查找
    /pattern
    ?pattern
    
查找并替换(末行模式) s 用法同sed
    :.,$-1s@he@HE@

linux下vi命令笔记的更多相关文章

  1. linux 下ln命令--笔记

    linux 下ln命令 ln命令用来为文件创建连接,连接类型分为硬连接和符号连接两种,默认的连接类型是硬连接.如果要创建符号连接必须使用"-s"选项.注意:符号链接文件不是一个独立 ...

  2. linux下vi命令大全

    进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首 ...

  3. Linux下VI命令详细介绍

       vi 是"Visual Interface" 的简称,它在Linux 上的地位就仿佛Edit 程序在DOS上一样.它可以执行输出.删除.查找.替换.块操作等众多文本操作,而且 ...

  4. (转)linux下vi命令大全

    http://www.cnblogs.com/88999660/articles/1581524.html 进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n ...

  5. linux下vi命令大全[转]

    进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...

  6. 介绍linux下vi命令的使用

    功能最强大的编辑器之一——vivi是所有UNIX系统都会提供的屏幕编辑器,它提供了一个视窗设备,通过它可以编辑文件.当然,对UNIX系统略有所知的人,或多或少都觉得vi超级难用,但vi是最基本的编辑器 ...

  7. linux下vi命令的使用

    linux vi命令详解   刚开始学着用linux,对vi命令不是很熟,在网上转接了一篇. vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单 ...

  8. linux下vi命令大全(转载)

    进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...

  9. 【linux】linux下vi命令的使用

    进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...

随机推荐

  1. iOS: Core Data入门

    Core Data是ORM框架,很像.NET框架中的EntityFramework.使用的基本步骤是: 在项目属性里引入CoreData.framework (标准库) 在项目中新建DataModel ...

  2. BZOJ 2226 LCMSum

    Description Given \(n\), calculate the sum \(LCM(1,n) + LCM(2,n) + \cdots + LCM(n,n)\), where \(LCM( ...

  3. Android 使用HTTP(get和post)方式登陆服务器

    package com.wuyou.submittoserver; import android.os.Bundle; import android.support.v7.app.ActionBarA ...

  4. log4j_slf4j log4j.properties

    hibernate 使用的日志是slf4j,而 slf4j又有各种实现策略. 使用log4j 就是其中一种方式. 需要的jar 包: log4j-1.2.16.jar slf4j-api-1.6.1. ...

  5. 查看TEMP使用情况

    SQL> select * from v$mystat where rownum<2; SID STATISTIC#    VALUE ---------- ---------- ---- ...

  6. BZOJ1617: [Usaco2008 Mar]River Crossing渡河问题

    1617: [Usaco2008 Mar]River Crossing渡河问题 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 654  Solved: 4 ...

  7. 15个值得开发人员关注的jQuery开发技巧和心得

    在这篇文章中,我们将介绍15个让你的jQuery更加有效的技巧,大部分关于性能提升的,希望大家能够喜欢! 1. 尽量使用最新版本的jQuery类库 jQuery项目中使用了大量的创新.最好的方法来提高 ...

  8. 解决Mac OS X Lion狮子系统及win7多分区教程

    [绿茶教程]解决Mac OS X Lion狮子系统及win7多分区教程   工具/原料 8G的u盘制作lion系统安装盘   步骤/方法  插入U盘---开机---按住左下角“Option”键(alt ...

  9. Linux学习笔记7——linux中的静态库和动态库

    一.静态库的编译 静态库的编译过程如下: 1.编译成目标文件 这里有一个可选项-static,调用格式:gcc -c -static 代码文件名.c 2.归档成静态库 A.归档的工具是ar工具,使用a ...

  10. Sorting Algorithm

    sorting 应该是最容易被考到的东西,自己老是学了背,背了忘.为了方便复习,这里进行总结 1. Bubble Sort 定义:每两个两个比较,每扫完一次,当前扫过的最大值放在了末尾. for i ...