本站不再更新,歡迎光臨 java開發技術網
          隨筆-230  評論-230  文章-8  trackbacks-0
           相信用過Linux的朋友一定不會對vi陌生吧,它是Linux環境中使用最為普遍的全屏幕編文本輯器。但由于我們一般用戶最初接觸的都是微軟的產品,它和DOS下的EDIT和Windows下的記事本的使用方法不盡相似,所以另初學Linux朋友覺得vi很難用,甚至無從下手,下面我就向大家介紹vi的使用方法。

            首先需要說明的是,vi分為兩種狀態,即命令狀態和編輯狀態,在命令狀態下,所鍵入的字符系統均作命令來處理,如:q代表退出,而編輯狀態則是用來輸入文字資料的。當你進入vi時,會首先進入命令狀態?,F在對vi也有了基本的認識,如果你有興趣請接著往向看。

            要進入vi,直接在系統提示符下鍵入vi <文件名>,當你鍵入的文件名是已有文件時,則系統自動打開此文件,否則將建立一個新文件。這時你將會看到屏幕左邊會出現波浪線~,這就代表該行是空的,沒有任何文字,這時系統正在命令狀態,怎樣切換到編輯狀態輸入文字呢?按鍵盤上的Insert鍵即可,這時我們就可以像使用其它的編輯器一樣進行文字的編輯了,功能鍵也和其它編輯器差不多,下面就是一些功能鍵的說明,是不是很簡單?




            ===========================================================
            說明                功能鍵
            ===========================================================
            移動光標到所在行的最前面      Home
            移動光標到所在行的最后面      End
            向下翻一頁             Page Down
            向上翻一頁             Page Up
            刪除光標所在位置字符        Delete
            刪除光標所在位置前面的字符     Backspace
            移動光標              ←↑↓→
            ===========================================================

            另外,vi還支持粘貼與復制,不過用鍵盤來做實在很麻煩,現在哪臺電腦沒有鼠標呢?和Windows中一樣,從你要復制的開始位置拖動鼠標到結束位置,這塊區域就反白了,再將光標移到你要粘貼的位置,按鼠標中鍵即可完成粘貼(如果你的鼠標是兩個鍵的,同時按左右鍵即可模擬三鍵鼠標的中鍵),這比Windos里方便吧。也許有的朋友會問,如何進行查找呢?下面我們按鍵盤上的Esc鍵切換到命令狀態,輸入“?<你要查找的字符串>”(不帶引號)就執行向下查找操作,而“/<你要查找的字符串>”表示向上查找,鍵盤上的n表示重復一次,而N表示反方向重復一次。

          無論是否退出 vi,均可保存所做的工作。按 ESC 鍵,確定 vi 是否處于命令模式。

          操作   鍵入
           
          保存,但不退出 vi   :w
           
          保存并退出 vi   :wq
           
          退出 vi,但不保存更改   :q
          !
           
          用其他文件名保存   :w filename
           
          在現有文件中保存并覆蓋該文件   :w
          ! filename
           

            說了半天,可能你的文件已經編輯完成了,但如何存盤呢?現在我們還是保持在命令狀態,按:w按后回車即完成了存盤工作,而退出vi返回到Linux的命令是:q,這兩個命令也可以組合使用,如:wq代表存盤退出。

            好了,說了半天,可能你的頭已經大了,上面講到的那些只是vi中最常用的功能,至于其它的功能你可以在使用中慢慢體會。順便說一句,不要強記那些命令,它們看起來多而毫無規律,多用幾次自然就熟練了,現在我覺得比Windows中的記事本方便多了。

          移動光標類命令

          h :光標左移一個字符
          l :光標右移一個字符
          space:光標右移一個字符
          Backspace:光標左移一個字符
          k或Ctrl+p:光標上移一行
          j或Ctrl+n :光標下移一行
          Enter :光標下移一行
          w或W :光標右移一個字至字首
          b或B :光標左移一個字至字首
          e或E :光標右移一個字j至字尾
          ) :光標移至句尾
          ( :光標移至句首
          }:光標移至段落開頭
          {:光標移至段落結尾
          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替換

          posted on 2006-09-28 10:09 有貓相伴的日子 閱讀(367) 評論(0)  編輯  收藏 所屬分類: linux/unix應用
          <2006年9月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          1234567

          常用鏈接

          留言簿(32)

          隨筆分類(222)

          隨筆檔案(224)

          文章分類(4)

          文章檔案(7)

          相冊

          收藏夾(4)

          最新評論

          閱讀排行榜

          評論排行榜

          本站不再更新,歡迎光臨 java開發技術網
          主站蜘蛛池模板: 瑞金市| 崇明县| 吉隆县| 金山区| 和平区| 正宁县| 铅山县| 金阳县| 嘉兴市| 祁阳县| 军事| 高平市| 如皋市| 松原市| 夏邑县| 丹阳市| 宁阳县| 玉林市| 南昌县| 江山市| 磐安县| 满洲里市| 遵化市| 长顺县| 兴化市| 赞皇县| 英山县| 金堂县| 康平县| 清涧县| 宜黄县| 水富县| 泰州市| 老河口市| 富锦市| 滨州市| 平塘县| 丁青县| 安新县| 海伦市| 旌德县|