<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Sky's blog

    我和我追逐的夢

    常用鏈接

    統計

    其他鏈接

    友情鏈接

    最新評論

    vi常用命令

    用了vi兩年,因為不用vi寫代碼作開發,只是簡單的修改配置文件而已,因此,呵呵,兩年了還是一點不熟悉。最近因為公司要求需要學習在linux/unix上開發c/c++,只好努力學一下vi/vim了。

    找了一本書,O'Reilly的Learning The VI Editor,chm的電子版本,認真地學了一遍,總結了一下常用命令:

    文件操作
    vi +n file?打開文件并移動到第n行
    vi +? file?打開文件并移動到最后一行
    vi R file / view file ?只讀打開文件
    :w??保存
    :w!??覆蓋已存在的文件文件
    :w newfile?保存為新文件
    :wq??保存并退出
    ZZ??保存并退出=:wq
    :q??退出
    :q!??退出不保存修改
    :e!??退回到上一次保存的狀態
    :1,10w newfile?將第一行到第10行保存為新文件
    :.,$w >> file?將當前位置到結尾的內容添加到別的文件
    :r file??讀取file文件的內容

    移動
    Numeric + h|j|k|l?執行n次操作
    h??向左移動(一個字符)
    j??向下移動一行
    k??向上移動一行
    l??向右移動(一個字符)?
    e/E??移動到單詞的末尾
    (/)??移動到當前(一下)句的開始
    {/}??移動到當前(一下)段的開始
    [[/]]??移動到當前(一下)部分的開始
    0??移動到行首
    $??移動到行末
    w??向后移動一個文本塊
    W??向后移動一個文本塊(忽略標點)
    b??向前移動一個文本塊
    B??向前移動一個文本塊(忽略標點)
    ^??移動到當前行的第一個非空白字符
    回車/+??移動到下一行的開頭的第一個字符
    -??移動到上一行的開頭的第一個字符
    CTRL-F??下翻一屏
    CTRL-B??上翻一屏
    CTRL-D??下翻半屏
    CTRL-U??下翻半屏
    z + 回車?將當前行移到屏幕頂部
    z.??將當前行移到屏幕中間
    z-??將當前行移到屏幕底部
    CTRL-L/CTRL-R?重新刷新屏幕?
    H??移到屏幕的第一行
    nH??移到屏幕的第n行
    M??移到屏幕的中間
    L??移到屏幕的最后一行
    nL??移到屏幕的最后一行前的n行
    CTRL-L??顯示行信息
    G??移動到文件的最后一行
    nG??移動到文件的第n行
    ``??移動到上一個位置

    編輯
    i??在當前位置前插入
    I??在行首插入
    a??在當前位置后添加
    A??在行末添加
    o??在當前行下方新建一個空行開始插入
    O??在當前行上方新建一個空行開始插入
    s??刪除當前字符然后進入插入狀態
    S??刪除當前行然后進入插入狀態
    cw??修改當前詞語(刪除然后進入插入狀態)
    ?c2b?刪除前面兩個詞語?
    ?c$?刪除本行當前位置后所有的內容
    ?c0?刪除本行當前位置前所有的內容
    cc??修改當前行(刪除然后進入插入狀態)
    r??替換當前字符(還保持命令狀態)
    R??連續替換(進入替換狀態)
    ~??修改當前字符的大小寫
    J??連接兩行

    標記
    mx??將當前位置標記為x
    'x??移動到標記為x的行
    `x??移動到標記為x的位置
    ``/''??在兩次位置間切換

    刪除
    dw??刪除一個單詞
    d2w??刪除兩個單詞
    dd??刪除當前行
    d3d??刪除3行
    d0??刪除當前行中在光標前的所有內容
    d$/D??刪除當前行中在光標后的所有內容
    db??刪除前一個單詞
    x??刪除一個字符
    3x??刪除3個字符

    移動
    p??粘貼
    xp??相當于交換兩個字符的位置
    yw??復制一個單詞

    .??重復上一個操作
    .??取消上一個操作

    ?

    搜索
    /pattern?從前往后搜
    ?pattern?從后往前搜
    n/N??和上一詞搜索方向相同(相反)再搜
    fx/Fx??在同一行中查找下(上)一個x字符并移動光標

    替換
    :s/old/new?替換當前行的第一個匹配
    :s/old/new/g?替換當前行的全部匹配
    :1,100s/old/new/g?替換1-100行的全部匹配
    :1,$s/old/new/g?替換全部匹配=:%s/old/new/g
    :g/pattern/s/old/new/g?查找滿足pattern條件的行并進行替換


    命令組合:
    Change?Delete?Copy?from Cursor to ...
    cH?dH?yH?top of screen
    cL?dL?yL?bottom of screen
    c+?d+?y+?next line
    c5|?d5|?y5|?column 5 of current line
    2c)?2d)?2y)?second sentence following
    c{?d{?y{?previous paragraph
    c/pattern d/pattern y/pattern pattern
    cn?dn?yn?next pattern
    cG?dG?yG?end of file
    c13G?d13G?y13G?line number 13
    (這里還是看書里面的原文吧。)

    posted on 2006-09-05 10:55 sky ao 閱讀(1241) 評論(0)  編輯  收藏 所屬分類: linux

    主站蜘蛛池模板: 嫖丰满老熟妇AAAA片免费看| 一级特黄aaa大片免费看| 67pao强力打造67194在线午夜亚洲 | fc2免费人成在线| 老妇激情毛片免费| 视频一区在线免费观看| 美女免费精品高清毛片在线视| 亚洲AV无码XXX麻豆艾秋| 精品久久久久久亚洲综合网| 极品色天使在线婷婷天堂亚洲 | 亚洲AV中文无码字幕色三| 亚洲色欲一区二区三区在线观看| 亚洲无线码在线一区观看| 亚洲欧洲∨国产一区二区三区| 亚洲人成网亚洲欧洲无码久久| 亚洲欧洲日产国码av系列天堂| 亚洲第一成年男人的天堂| 亚洲成a人片7777| 亚洲人成77777在线播放网站不卡 亚洲人成77777在线观看网 | 久久成人a毛片免费观看网站| 久久久精品2019免费观看| 国产成人精品免费视频大全麻豆| 性做久久久久久免费观看| 在线免费视频一区| 五月婷婷亚洲综合| 亚洲综合另类小说色区| 亚洲bt加勒比一区二区| 亚洲婷婷天堂在线综合| 亚洲精华液一二三产区| 全部一级一级毛片免费看| 免费无码H肉动漫在线观看麻豆| 日韩精品久久久久久免费| 欧洲精品成人免费视频在线观看| 国产成人aaa在线视频免费观看| 4338×亚洲全国最大色成网站| 午夜影视日本亚洲欧洲精品一区| 亚洲中文字幕日本无线码| 免费大片av手机看片| 免费91最新地址永久入口 | 免费女人高潮流视频在线观看 | 国产免费区在线观看十分钟|