<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

    主站蜘蛛池模板: 亚洲精品色在线网站| 成人亚洲国产va天堂| 成人精品视频99在线观看免费| 亚洲国产精品自产在线播放| 一级一级一级毛片免费毛片| 亚洲高清无码在线观看| 一级做a爰性色毛片免费| 亚洲日韩一页精品发布| 大地资源网高清在线观看免费| 亚洲成AV人片在线观看无| 免费网站看av片| 亚洲国产成人久久| 情侣视频精品免费的国产| 一级做a爰片性色毛片免费网站 | 亚洲国产精品嫩草影院| 国产美女无遮挡免费视频| 九九九精品视频免费| 久久亚洲国产精品| 在线视频观看免费视频18| 日韩欧美亚洲国产精品字幕久久久| 国产精品色午夜免费视频| 中文字幕永久免费视频| 中文字幕亚洲综合精品一区| 成人免费视频试看120秒| 国产成人亚洲精品蜜芽影院| 国产∨亚洲V天堂无码久久久| 亚洲成人免费在线观看| 在线观看免费亚洲| 精品久久久久久亚洲| 日本最新免费网站| 青青视频免费在线| 1区1区3区4区产品亚洲| 国产免费av片在线播放| 久久久国产精品福利免费| 亚洲乱码中文字幕在线| 国产国拍精品亚洲AV片| 国产免费AV片在线播放唯爱网| 日韩在线观看视频免费| 亚洲一区二区三区精品视频| 亚洲国产主播精品极品网红| 91精品免费不卡在线观看|