Beyond the Void
BYVoid
學用VIM Linux下最通用的文本編輯器
本文正體字版由OpenCC轉換

VIM

vim filename :打開或新建文件,並將光標置於第一行首 vim -r filename :在上次正用vi編輯時發生系統崩潰,恢復filename

[Esc] 退出當前模式

插入模式 i 插入在當前文字 I 插入在行首 O 插入並移到上一行 o 插入並移到下一行 a 插入在當前文字的下一個字 A 插入在行尾 [Insert] 插入在行尾 [Delete] 刪除當前字符 替換模式 r替換一個字符然後退出替換模式 R進入替換字符模式

定位操作 [Page Up] 屏幕向前移動一頁 [Page Down] 屏幕向前移動一頁 [Ctrl] + [d] 屏幕向前移動半頁 [Ctrl] + [u] 屏幕向後移動半頁 + 光標移動到下一行首 - 光標移動到上一行首 /單詞 向光標之後尋找一個字符串名稱爲 ‘單詞’ 的字符串 n 查找下一個 N 查找上一個

修改操作 u 撤銷 [Ctrl] + [R] 重做

:s/QQ/MSN/ 在當前行之間尋找 ‘QQ’ 一個字符串,並將該字符串取代爲 ‘MSN’ :1,2s/QQ/MSN/ 在第 1 與 2 行之間尋找 ‘QQ’ 一個字符串,並將該字符串取代爲 ‘MSN’ :1,2s/QQ/MSN/g 在第 1 與 2 行之間尋找 ‘QQ’ 所有字符串,並將該字符串取代爲 ‘MSN’ :3,$s/QQ/MSN/g 在第 3 與最後一行之間尋找 ‘QQ’ 這個字符串,並將該字符串取代爲 ‘MSN’ :3,$s/QQ/MSN/gc 從第 3 行到最後一行尋找 ‘QQ’ 字符串,並將該字串取代爲  ‘MSN’ 且在取代前顯示提示字符給使用者確認是否需要取代! :%s/QQ/MSN/g:將文件中所有 ‘QQ’ 均用 ‘MSN’ 替換

x 向後刪除一個字符 X 向前刪除一個字符 5x 向後刪除5個字符 5X 向前刪除5個字符 dd 刪除光標所在的那一整行(找到換行符爲止) 5dd 刪除光標所在的那5整行(找到換行符爲止) d1G 刪除光標所在到第一行的所有資料 dG 刪除光標所在到最後一行的所有資料

J 將光標所在列與下一行的資料結合成同一行

複製粘貼 yy 複製光標所在的那一行 5yy 複製光標所在的向下5行 y1G 複製光標所在列到第一行的所有資料 yG 複製光標所在列到最後一行的所有資料

p 複製的數據在光標下一行貼上 P 複製的數據在光標上一行貼上

保存與退出 :w 將編輯的資料寫入硬盤檔案中 :w! 若檔案屬性爲『只讀』時,強制寫入該檔案 :q 離開 vi :q! 若曾修改過檔案,又不想儲存,使用 ! 爲強制離開不儲存檔案。 :wq 儲存後離開,若爲 :wq! 則爲強制儲存後離開 :e! 將檔案還原到最原始的狀態 :w [filename] 將編輯的資料儲存成另一個檔案 :r [filename] 在編輯的資料中,讀入另一個檔案的資料。即將 『filename』這個檔案內容加到光標所在行後面 :set nu 顯示行號,設定之後,會在每一行的前綴顯示該行的行號 :set nonu 與 set nu 相反,爲取消行號 n1,n2 w [filename] 將 n1 到 n2 的內容儲存成 filename 這個檔案。 :! command 暫時離開 vi 到指令列模式下執行 command 的顯示結果!例如[ :! ls /home ]


上次修改時間 2017-02-03

相關日誌