面試中的一個問題 Linux中vi編輯器使用

          今天面試出了點小小的狀況,
          問題Linux 中vi編輯器怎樣復制2行。
           糗大了 。vi我只是在做配置的時候才使用的,而且很少使用命令,最多也就是個:qw的保存退出,或:q的退出命令。
          回家看看該怎么做:
          一下是從網絡上找到的:
          vi命令
          進入vi的命令 
          vi filename :打開或新建文件,并將光標置于第一行首 
          vi +n filename :打開文件,并將光標置于第n行首 
          vi + filename :打開文件,并將光標置于最后一行首 
          vi +/pattern filename:打開文件,并將光標置于第一個與pattern匹配的串處 
          vi -r filename :在上次正用vi編輯時發生系統崩潰,恢復filename 
          vi filename....filename :打開多個文件,依次進行編輯 

          移動光標類命令
          h :光標左移一個字符 
          l :光標右移一個字符 
          space:光標右移一個字符 
          Backspace:光標左移一個字符 
          k或Ctrl+p:光標上移一行 
          j或Ctrl+n :光標下移一行 
          Enter :光標下移一行 
          w或W :光標右移一個字至字首 
          b或B :光標左移一個字至字首 
          e或E :光標右移一個字至字尾 
          ) :光標移至句尾 
          ( :光標移至句首 
          }:光標移至段落開頭 
          {:光標移至段落結尾 
          nG:光標移至第n行首 
          n+:光標下移n行 
          n-:光標上移n行 
          n$:光標移至第n行尾 
          H :光標移至屏幕頂行 
          M :光標移至屏幕中間行 
          L :光標移至屏幕最后行 
          0:(注意是數字零)光標移至當前行首 
          $:光標移至當前行尾 

          屏幕翻滾類命令 
          Ctrl+u:向文件首翻半屏 
          Ctrl+d:向文件尾翻半屏 
          Ctrl+f:向文件尾翻一屏 
          Ctrl+b;向文件首翻一屏 
          nz:將第n行滾至屏幕頂部,不指定n時將當前行滾至屏幕頂部。 

          插入文本類命令 
          i :在光標前 
          I :在當前行首 
          a:光標后 
          A:在當前行尾 
          o:在當前行之下新開一行 
          O:在當前行之上新開一行 
          r:替換當前字符 
          R:替換當前字符及其后的字符,直至按ESC鍵 
          s:從當前光標位置處開始,以輸入的文本替代指定數目的字符 
          S:刪除指定數目的行,并以所輸入文本代替之 
          ncw或nCW:修改指定數目的字 
          nCC:修改指定數目的行 

          刪除命令 
          ndw或ndW:刪除光標處開始及其后的n-1個字 
          do:刪至行首 
          d$:刪至行尾 
          ndd:刪除當前行及其后n-1行 
          x或X:刪除一個字符,x刪除光標后的,而X刪除光標前的 
          Ctrl+u:刪除輸入方式下所輸入的文本 

          搜索及替換命令 
          /pattern:從光標開始處向文件尾搜索pattern 
          ?pattern:從光標開始處向文件首搜索pattern 
          n:在同一方向重復上一次搜索命令 
          N:在反方向上重復上一次搜索命令 
          :s/p1/p2/g:將當前行中所有p1均用p2替代 
          :n1,n2s/p1/p2/g:將第n1至n2行中所有p1均用p2替代 
          :g/p1/s//p2/g:將文件中所有p1均用p2替換 

          選項設置 
          all:列出所有選項設置情況 
          term:設置終端類型 
          ignorance:在搜索中忽略大小寫 
          list:顯示制表位(Ctrl+I)和行尾標志($) 
          number:顯示行號 
          report:顯示由面向行的命令修改過的數目 
          terse:顯示簡短的警告信息 
          warn:在轉到別的文件時若沒保存當前文件則顯示NO write信息 
          nomagic:允許在搜索模式中,使用前面不帶“\”的特殊字符 
          nowrapscan:禁止vi在搜索到達文件兩端時,又從另一端開始 
          mesg:允許vi顯示其他用戶用write寫到自己終端上的信息 

          最后行方式命令 
          :n1,n2 co n3:將n1行到n2行之間的內容拷貝到第n3行下 
          :n1,n2 m n3:將n1行到n2行之間的內容移至到第n3行下 
          :n1,n2 d :將n1行到n2行之間的內容刪除 
          :w :保存當前文件 
          :e filename:打開文件filename進行編輯 
          :x:保存當前文件并退出 
          :q:退出vi 
          :q!:不保存文件并退出vi 
          :!command:執行shell命令command 
          :n1,n2 w!command:將文件中n1行至n2行的內容作為command的輸入并執行之,若不指定n1,n2,則表示將整個文件內容作為command的輸入 
          :r!command:將命令command的輸出結果放到當前行 

          寄存器操作 
          "?nyy:將當前行及其下n行的內容保存到寄存器?中,其中?為一個字母,n為一個數字 
          "?nyw:將當前行及其下n個字保存到寄存器?中,其中?為一個字母,n為一個數字 
          "?nyl:將當前行及其下n個字符保存到寄存器?中,其中?為一個字母,n為一個數字 
          "?p:取出寄存器?中的內容并將其放到光標位置處。這里?可以是一個字母,也可以是一個數字 
          ndd:將當前行及其下共n行文本刪除,并將所刪內容放到1號刪除寄存器中。

          posted on 2009-02-18 16:45 duduli 閱讀(680) 評論(1)  編輯  收藏 所屬分類: Linux

          評論

          # re: 面試中的一個問題 Linux中vi編輯器使用 2009-02-21 10:10 ZelluX

          面試居然還考vi。。要我用emacs的怎么辦。。  回復  更多評論   

          <2009年2月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          1234567

          導航

          統計

          公告

          welcome to my place.

          常用鏈接

          留言簿(5)

          我參與的團隊

          隨筆分類

          隨筆檔案

          新聞分類

          石頭JAVA擺地攤兒

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          @duduli
          主站蜘蛛池模板: 闽侯县| 托里县| 嘉兴市| 宣恩县| 新乡市| 郓城县| 收藏| 南涧| 宿松县| 巴里| 齐齐哈尔市| 尼玛县| 曲松县| 那坡县| 赤水市| 商丘市| 锡林浩特市| 开原市| 台东市| 东乌| 嫩江县| 旬邑县| 嘉善县| 鹤庆县| 磐安县| 个旧市| 乐平市| 墨脱县| 鸡泽县| 潜江市| 甘肃省| 梅河口市| 绥江县| 临西县| 藁城市| 塘沽区| 万荣县| 吐鲁番市| 巴里| 察雅县| 铅山县|