Vim基本操作

來源:互聯網
上載者:User

一 vi的操作模式
vi提供兩種操作模式:輸入模式(insert mode)和指令模式(command mode)。在輸入模式下,使用者可輸入文本資料。在指令模式下,可進行刪除、修改等各種編輯動作。

 在輸入模式下,按 Esc鍵切換到指令模式下。
在指令模式下,按 輸入指令(i、a、o等)進入輸入模式。

二 進入vi 

 $ vi  filename

直接鍵入“vi + 所要編輯的檔案名稱”,即可對指定的檔案進行編輯。
如果指定的檔案為新檔案,則提示:“New file”,否則顯示該檔案的當前內容。

 $ view filename

以唯讀方式開啟檔案filename

三 指令模式
3.1 進入輸入模式

 a     在當前遊標之後輸入
 A     在當前行之末輸入
  i     在當前遊標之前輸入
  I     在當前行之首輸入
 o     在當前行之下新增一行,並在新增行輸入
 O     在當前行之上新增一行,並在新增行輸入
輸入結束後,按Esc鍵退出輸入模式

3.2 遊標移動

 h 向左移動一個字元
 l 向右移動一個字元
 j 向下移動一個字元
 k 向上移動一個字元
 b 左移一個單詞,至詞首
 w 右移一個單詞,至詞尾
 0  移到當前行行首
 $ 移到當前行行尾
 + 移至下一行的行首
 - 移至上一行的行首
 H 移至視窗的第一行
 M 移至視窗的中間一行
 L 移至視窗的最後一行
 G 移至該檔案的最後一行
 nG 移至該文檔的第n行
 n+ 下移n行
 n- 上移n行

3.3 視窗移動

 <Ctrl> + f 視窗下卷一頁
 <Ctrl> + b 視窗上卷一頁
   <Ctrl> + d 視窗下卷半頁
 <Ctrl> + u 視窗上卷半頁
  <Ctrl> + e 視窗下卷一行
  <Ctrl> + y 視窗上卷一行

3.4 刪除操作

 x 刪除遊標所在字元
 X 刪除遊標前一字元
 dw 從遊標當前位置開始向後刪除一個單詞
 db 從遊標當前位置開始向前刪除一個單詞
 d0 從行首刪除至當前遊標位置
 d$ 從遊標當前位置刪除至行尾
 dd 刪除遊標所在行
 D 同d$

3.5 修改操作

 s 修改遊標所在字元,修改完成後按Esc鍵結束
 S 修改整行內容,修改完成後按Esc鍵結束
 r 替換當前遊標所在字元
 R 進入替換狀態,直至按Esc鍵結束
 cw 修改一個單詞(從遊標位置至詞尾)
 cb 修改一個單詞(從詞首至遊標位置)
 cc 修改整行內容,完成後按Esc鍵結束,同S
 c0 修改行首至遊標位置的內容
 c$ 修改遊標位置至行尾的內容
 ~ 遊標所在字元大小寫切換

3.6 指令重複 
在指令模式中,可在指令前面加入一個數字n,則該指令會重複執行n次。常用的重複操作有:

 nx 刪除n個字元
 ndd 刪除n行
 ns 修改n個字元

3.7 取消前一動作(Undo)

 u 撤消上一指令的結果

3.8 尋找字串

 /字串 從當前遊標向後尋找該字串
 ?字串 從當前遊標向前尋找該字串
 n 從當前遊標向後尋找下一個字串
 N 從當前遊標向前尋找下一個字串

3.9 查看編輯狀況

 <Ctrl> + g 顯示正在編輯的檔案名稱、當前遊標所在行數、檔案總行數、檔案是否被修改

四 儲存與退出

 :w 儲存,但不退出
 :wq 儲存並退出
 :x 同:wq
 :q 退出,如果當前檔案沒有儲存,禁止退出
 :q! 不儲存退出
 :w file1 將內容儲存至檔案file1中,注意:此時編輯的仍為原檔案
 :w! file1 將內容覆蓋儲存至檔案file1中,如檔案file1存在,:w file1將禁止執行

 

五 環境設定

 :set 顯示已設定的環境狀況
 :set all 顯示所有的環境設定選項
 :set nu 顯示行號
 :set nonu 不顯示行號
 :set ts = n 設定Tab鍵的長度為n

六 執行指令 
以下用具體的數字為例進行介紹,數字表示行數,遊標所在行可用“.”代替,檔案最後一行可用“$”代替。

 : 10 , 20d 刪除第10行至第20行的內容
 :10d 刪除第10行的內容
 :%d 刪除全部內容
 : 10 , 20co30 將第10行至第20行的內容複寫到第30行之後
 : 10 , 20mo30 將第10行至第20行的內容移動到第30行之後
 : 1 , $s/old/new 將第1行至最後一行中的old替換成new
 : 1 , $s/^/new 將第1行至最後一行的內容前面插入new
 : 10  將遊標移至第10行

七 重複指令

 . 重複上一條指令

八 切換到shell狀態

 :sh 切換到shell狀態,exit返回(原文地址:
http://www.cnblogs.com/endsock/archive/2010/12/29/1921127.html)
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.