歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> 從零開始學Linux_08_vi使用

從零開始學Linux_08_vi使用

日期:2017/3/1 12:24:10   编辑:關於Linux

歡迎大家閱讀參考,如有錯誤或疑問請留言糾正,謝謝微笑



一、什麼是vi 1、什麼vi :vi是Linux/Unix底下最常用的文本編輯器。
2、vim:vim是vi的升級版本,它不僅兼容vi的所有命令,而且還加入了一些新的特性。


二、vi的三種工作模式 \


三、編輯模式 1、光標定位 2、搜索字符串(:.,$s喎?http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vc3RyMS9zdHIyL2cgCiAg1Nq1scew0NAg0+sg1+668yDQ0NauvOTRsNXSIHN0cjEg1eK49tfWt/u0rqOssqK9q7jD19a3+7SuyKG0+s6qIHN0cjIgo6GjqQozoaLM5ru7us3JvrP9PGJyPgo0oaK89MfQus3Vs8z5PGJyPgo1oaKzt8/6us3W2Li0PGJyPgrP6s+4yOfPwrHty/nKvqO6CgoKPHRhYmxlIGJvcmRlcj0="1" cellpadding="2" cellspacing="0" width="90%"> 一般模式: 移動光標 h 或 向左箭頭鍵 光標向左移動一個字符 j 或 向下箭頭鍵 光標向下移動一個字符 k 或 向上箭頭鍵 光標向上移動一個字符 l 或 向右箭頭鍵 光標向右移動一個字符 [Ctrl] + [f] 屏幕『向前』移動一頁(常用) [Ctrl] + [b] 屏幕『向後』移動一頁(常用) [Ctrl] + [d] 屏幕『向前』移動半頁 [Ctrl] + [u] 屏幕『向後』移動半頁 + 光標移動到非空格符的下一列 - 光標移動到非空格符的上一列 n<space> 按下數字後再按空格鍵,光標會向右移動這一行的 n 個字符。例如 20<space> 則光標會向後面移動 20 個字符距離。 0 這是數字『 0 』:移動到這一行的最前面字符處(常用) $ 移動到這一行的最後面字符處(常用) H 光標移動到這個屏幕的最上方那一行 M 光標移動到這個屏幕的中央那一行 L 光標移動到這個屏幕的最下方那一行 G 移動到這個檔案的最後一行(常用) nG 移動到這個檔案的第 n 行。例如 20G 則會移動到這個檔案的 20 行(可配合 :set nu) n<Enter> 光標向下移動 n 行(常用) 一般模式: 搜尋與取代 /word 向光標之後尋找一個字符串名稱為 word 的字符串。(常用) ?word 向光標之前尋找一個字符串名稱為 word 的字符串。 :n1,n2s/word1/word2/g 在第 n1 與 n2 行之間尋找 word1 這個字符串,並將該字符串取代為 word2 !(常用) :1,$s/word1/word2/g 從第一行到最後一行尋找 word1 字符串,並將該字符串取代為 word2 !(常用) :1,$s/word1/word2/gc 從第一行到最後一行尋找 word1 字符串,並將該字符串取代為 word2 !且在取代前顯示提示字符給用戶確認(conform)是否需要取代!(常用) 一般模式: 刪除、復制與貼上 x, X x 為向後刪除一個字符, X 為向前刪除一個字符(常用) nx 向後刪除 n 個字符 dd 刪除游標所在的那一整列(常用) ndd 刪除光標所在的向下 n 列,例如 20dd 則是刪除 20 列(常用) d1G 刪除游標所在到第一行的所有數據 dG 刪除游標所在到最後一行的所有數據 yy 復制游標所在的那一行(常用) nyy 復制光標所在的向下 n 列,例如 20yy 則是復制 20 列(常用) y1G 復制游標所在列到第一列的所有數據 yG 復制游標所在列到最後一列的所有數據 p, P p 為復制的數據在光標下一行貼上,P 則為貼在游標上一行!(常用) J 將光標所在列與下一列的數據結合成同一列 c 重復刪除多個數據,例如向下刪除 10 行,[ 10cj ] u 復原前一個動作。(常用)

四、插入模式(編輯模式) 進入編輯模式
i, I 插入:在目前的光標所在處插入輸入之文字,已存在的文字會向後退;(常用) a, A 增加:由目前光標所在的下一個字開始輸入,已存在的文字會向後退:(常用) o, O 插入新的一行:從光標所在的下一行枝行首開始輸入文字;(常用) r, R 取代:r 會取代光標所在的那一個字符;R會一直取代光標所在的文字,直到按下 ESC 為止;(常用) Esc 退出編輯模式,回到一般模式中(常用)

五、命令模式(末行模式) 指令列命令模式
:w 將編輯的數據寫入硬盤檔案中(常用) :w! 若文件屬性為『只讀』時,強制寫入該檔案 :q 離開 vi (常用) :q! 若曾修改過檔案,又不想儲存,使用 ! 為強制離開不儲存檔案。 :wq 儲存後離開,若為 :wq! 則為強制儲存後離開(常用) :e! 將文件還原到最原始的狀態! ZZ 若檔案沒有更動,則不儲存離開,若檔案已經經過更動,則儲存後離開! :w [filename] 將編輯的數據儲存成另一個檔案(類似另存新檔) :r [filename] 在編輯的數據中,讀入另一個檔案的數據。亦即將 『filename』這個檔案內容加到游標所在行後面 :set nu 顯示行號,設定之後,會在每一行的前綴顯示該行的行號 :set nonu 與 set nu 相反,為取消行號! n1,n2 w [filename] 將 n1 到 n2 的內容儲存成 filename 這個檔案。 :! command 暫時離開 vi 到指令列模式下執行 command 的顯示結果!例如[ :! ls /home ]

版權聲明:本文為博主原創文章,未經博主允許不得轉載。

Copyright © Linux教程網 All Rights Reserved