福建建筑人才服務(wù)中心檔案/熱狗seo顧問(wèn)
文章目錄
- 一、vim簡(jiǎn)介
- 二、命令模式
- 1. 光標(biāo)移動(dòng)
- 2. 復(fù)制、剪切和粘貼
- 3. 撤銷和重做
- 4. 搜索和替換
- 5. 顯示行號(hào)
- 三、輸入模式
- 1. 進(jìn)入輸入模式
- 2. 在輸入模式下編輯文本
- 3. 使用特殊字符和快捷鍵
- 注意事項(xiàng)
- 四、命令行模式
- 1. 保存和退出
- 2. 查找和替換
- 3. 顯示行號(hào)和其他設(shè)置
- 4. 執(zhí)行外部命令
- 注意事項(xiàng)
- 五、相關(guān)鏈接
一、vim簡(jiǎn)介
Vim是高度可配置的,大多數(shù)常用的編輯功能都可以不必使用鼠標(biāo)就可以實(shí)現(xiàn),并提供了豐富的插件系統(tǒng)。Vim的這些特性使其成為了一個(gè)非常強(qiáng)大的文本編輯器,尤其適合在命令行界面中使用。
Vim的操作模式主要包括普通模式、插入模式和命令模式。在普通模式下,用戶可以進(jìn)行文本的定位、復(fù)制、粘貼、刪除等操作;在插入模式下,用戶可以輸入文本;在命令模式下,用戶可以執(zhí)行一些特定的命令,如保存文件、退出Vim等。
二、命令模式
在 vi/vim 的命令模式下,用戶可以執(zhí)行一系列的命令來(lái)操作文本,而無(wú)需進(jìn)入插入模式。
1. 光標(biāo)移動(dòng)
h
:左移一個(gè)字符j
:下移一行k
:上移一行l
:右移一個(gè)字符w
:向前移動(dòng)到下一個(gè)單詞的開(kāi)頭b
:向后移動(dòng)到上一個(gè)單詞的開(kāi)頭e
:向前移動(dòng)到當(dāng)前單詞的結(jié)尾0
(數(shù)字零):移動(dòng)到當(dāng)前行的開(kāi)頭$
:移動(dòng)到當(dāng)前行的結(jié)尾G
:移動(dòng)到指定行號(hào)的位置,例如10G
將光標(biāo)移動(dòng)到第10行
案例:假設(shè)你正在編輯一個(gè)文本文件,并且想要快速將光標(biāo)移動(dòng)到第10行的末尾。你可以在命令模式下輸入 10G$
。
2. 復(fù)制、剪切和粘貼
yy
:復(fù)制當(dāng)前行dd
:剪切當(dāng)前行p
:粘貼到當(dāng)前行的下一行P
:粘貼到當(dāng)前行的上一行
案例:假設(shè)你想要復(fù)制第5行并將其粘貼到第7行之后。你可以在命令模式下執(zhí)行以下步驟:
- 將光標(biāo)移動(dòng)到第5行:
5G
- 復(fù)制當(dāng)前行:
yy
- 將光標(biāo)移動(dòng)到第7行:
7G
- 粘貼到下一行:
p
3. 撤銷和重做
u
:撤銷上一步操作Ctrl + r
:重做上一步被撤銷的操作
案例:如果你在編輯文本時(shí)不小心刪除了幾行,你可以使用 u
命令來(lái)撤銷這個(gè)操作。如果你又想要恢復(fù)那些被撤銷的更改,可以使用 Ctrl + r
命令。
4. 搜索和替換
/pattern
:從當(dāng)前位置開(kāi)始向前搜索指定的模式?pattern
:從當(dāng)前位置開(kāi)始向后搜索指定的模式:s/old/new/g
:在當(dāng)前行替換第一個(gè)old為new:%s/old/new/g
:在全文替換old為new:n,ms/old/new/g
:在第n行到第m行之間替換old為new
案例:假設(shè)你想要在全文中將所有的 “apple” 替換為 “orange”。你可以在命令模式下輸入 :%s/apple/orange/g
。
5. 顯示行號(hào)
:set nu
:顯示行號(hào):set nonu
:取消顯示行號(hào)
案例:如果你想要查看當(dāng)前文件的行號(hào),可以在命令模式下輸入 :set nu
。當(dāng)你不再需要行號(hào)時(shí),可以輸入 :set nonu
來(lái)取消顯示。
這些只是 vi/vim 命令模式下的一些基本命令和案例。實(shí)際上,vi/vim 的功能非常強(qiáng)大,還有許多高級(jí)特性和命令等待你去探索和學(xué)習(xí)。通過(guò)不斷練習(xí)和實(shí)踐,你可以逐漸掌握這個(gè)強(qiáng)大的文本編輯器,并提高你的文本編輯效率。
三、輸入模式
在 vi/vim 編輯器中,輸入模式(Insert Mode)是用戶用于輸入或編輯文本的模式。當(dāng)從命令模式(Command Mode)切換到輸入模式后,用戶就可以開(kāi)始輸入文本了。
1. 進(jìn)入輸入模式
i
:在當(dāng)前光標(biāo)位置前插入文本。I
:在當(dāng)前行的行首插入文本。a
:在當(dāng)前光標(biāo)位置后插入文本。A
:在當(dāng)前行的行末插入文本。o
:在當(dāng)前行的下一行插入新行并進(jìn)入插入模式。O
:在當(dāng)前行的上一行插入新行并進(jìn)入插入模式。
案例:假設(shè)你正在編輯一個(gè)文本文件,并且想要在第5行的行首插入一些文本。你可以在命令模式下執(zhí)行以下步驟:
- 將光標(biāo)移動(dòng)到第5行:
5G
- 在行首插入文本:
I
然后輸入你想要添加的文本,比如 “這是新添加的內(nèi)容:”。 - 按下
Esc
鍵退出輸入模式,返回到命令模式。
2. 在輸入模式下編輯文本
在輸入模式下,除了 Esc
鍵用于退出輸入模式外,其他的按鍵都可以被視作為一般的輸入按鍵,用于輸入文本。你可以輸入字母、數(shù)字、標(biāo)點(diǎn)符號(hào)等任何你需要的字符。
案例:繼續(xù)上面的例子,假設(shè)你想要在剛才插入的文本后面繼續(xù)輸入一些內(nèi)容。你可以直接在輸入模式下繼續(xù)輸入,比如 “這是繼續(xù)輸入的內(nèi)容?!?#xff0c;然后按下 Esc
鍵退出輸入模式。
3. 使用特殊字符和快捷鍵
在輸入模式下,你還可以使用一些特殊字符和快捷鍵來(lái)輔助編輯。例如:
Ctrl + u
:撤銷當(dāng)前行的所有更改。Ctrl + r
:恢復(fù)被撤銷的更改。Tab
:插入制表符(通常用于縮進(jìn))。
案例:假設(shè)你在輸入模式下輸入了一行文本,但突然發(fā)現(xiàn)其中有誤,你可以使用 Ctrl + u
來(lái)撤銷整行的更改,然后重新輸入。如果你想要恢復(fù)被撤銷的更改,可以使用 Ctrl + r
。
注意事項(xiàng)
- 在輸入模式下,編輯器不會(huì)識(shí)別命令,只會(huì)將輸入的字符作為文本內(nèi)容。
- 按下
Esc
鍵是退出輸入模式并返回到命令模式的唯一方式。 - 在輸入模式下,你可以使用方向鍵來(lái)移動(dòng)光標(biāo),但這通常不是最高效的做法。在 vi/vim 中,更推薦使用命令模式的光標(biāo)移動(dòng)命令來(lái)快速定位光標(biāo)位置。
四、命令行模式
在 vi/vim 編輯器中,命令行模式(Command-line Mode)允許用戶執(zhí)行一些全局性的命令,如保存文件、退出編輯器、查找替換文本等。
1. 保存和退出
:w
:將當(dāng)前編輯的內(nèi)容寫入文件。:q
:退出 vi/vim 編輯器。:wq
或ZZ
(兩個(gè)大寫字母Z):保存文件并退出。:q!
:不保存文件,強(qiáng)制退出。:w [filename]
:將當(dāng)前文件內(nèi)容另存為新文件,filename 為新文件名。
案例:假設(shè)你編輯完一個(gè)文件后,想要保存并退出 vi/vim。你可以在命令行模式下輸入 :wq
然后按回車鍵。如果你想直接退出而不保存更改,可以輸入 :q!
。
2. 查找和替換
/pattern
:在當(dāng)前文件中向前查找指定的字符串 pattern。?pattern
:在當(dāng)前文件中向后查找指定的字符串 pattern。:s/old/new/g
:在當(dāng)前行將 old 替換為 new。:%s/old/new/g
:在整個(gè)文件中將 old 替換為 new。:n,ms/old/new/g
:在文件的第 n 行到第 m 行之間將 old 替換為 new。
案例:如果你想在當(dāng)前文件中查找所有的 “error” 字符串,可以在命令行模式下輸入 /error
然后按回車鍵。每次按 n
鍵會(huì)向前查找下一個(gè)匹配項(xiàng),按 N
鍵會(huì)向后查找。如果你想將文件中的所有 “error” 替換為 “mistake”,可以輸入 :%s/error/mistake/g
。
3. 顯示行號(hào)和其他設(shè)置
:set number
或:set nu
:顯示文件的行號(hào)。:set nonumber
或:set nonu
:隱藏文件的行號(hào)。:set ignorecase
:在查找時(shí)忽略大小寫。:set paste
:切換到粘貼模式,避免粘貼時(shí)出現(xiàn)格式問(wèn)題。
案例:如果你想在編輯時(shí)顯示文件的行號(hào),可以在命令行模式下輸入 :set number
。當(dāng)你不再需要顯示行號(hào)時(shí),可以輸入 :set nonumber
來(lái)隱藏它們。
4. 執(zhí)行外部命令
:!command
:執(zhí)行 shell 命令 command,并返回到 vi/vim。
案例:如果你想在編輯文件時(shí)執(zhí)行一個(gè)外部命令(比如查看當(dāng)前目錄的文件列表),可以在命令行模式下輸入 :!ls
。執(zhí)行完命令后,按回車鍵會(huì)返回到 vi/vim 繼續(xù)編輯。
注意事項(xiàng)
- 在命令行模式下輸入的命令通常以冒號(hào)
:
開(kāi)頭。 - 輸入完命令后,需要按回車鍵來(lái)執(zhí)行。
- 一些命令可能支持額外的參數(shù)或選項(xiàng),可以通過(guò)查看 vi/vim 的文檔或幫助信息來(lái)了解更多詳情。
五、相關(guān)鏈接
- Linux官網(wǎng)
- Linux常用命令
- CentOS官網(wǎng)下載地址
- 「Linux系列」Linux簡(jiǎn)介及常見(jiàn)的Linux系統(tǒng)
- 「Linux系列」Linux 系統(tǒng)啟動(dòng)過(guò)程
- 「Linux系列」Linux 系統(tǒng)目錄結(jié)構(gòu)/忘記密碼解決方法
- 「Linux系列」Linux 遠(yuǎn)程登錄/文件基本屬性
- 「Linux系列」Linux 文件與目錄管理
- 「Linux系列」Linux 如何學(xué)習(xí)用戶和用戶組管理
- 「Linux系列」聊聊Linux磁盤管理的事