vim 退出命令(保存、放弃保存)_linux保存并退出vim(vi/vim)
測試環(huán)境VMware 12 Pro 下CentOS 7自帶vim7.4
今天第一次接觸這個vim文本編輯器,拿到一個陌生的工具,我們想的當(dāng)然是最短的時間掌握它的基本操作,體會到成就感。如果你跟我一樣,那么這篇教程或許對你有所幫助。
碎碎念(如果沒有時間可以直接跳過該部分,直接看命令)
Linux下一切皆文件,所以需要強大的文本編輯器,而vim就是Linux上一個功能強大且使用廣泛的文本編輯器。它可以對文本進(jìn)行創(chuàng)建、查找、替換、刪除、復(fù)制和粘貼等操作,并且它只有命令沒有菜單,這個跟Windows里面差別很大,所以一開始的觀念要轉(zhuǎn)換!
任何工具都應(yīng)該是為人服務(wù)的,所以一開始不要整的太麻煩,會基本操作就可以了。
對于工具的各種命令,永遠(yuǎn)不是靠記憶,而是像查單詞一樣,掌握基本用法,需要時,用幫助命令學(xué)習(xí)該命令功能即可。
輸入vim命令前都需要先按Esc!!切換到命令模式
一、vim的三種模式
-
正常模式——按Esc進(jìn)入, 左下角顯示文件名或為空 ,輸入vim命令前都需要先按Esc!該模式下又分為命令模式操作和末行模式操作。
-
插入模式——按i進(jìn)入, 左下角顯示–INSERT–,這個是insert單詞的第一個字母,這樣好記,編輯文件時很常用。
-
可視模式—— 按v或V進(jìn)入,左下角顯示–VISUAL–閱讀模式,暫時我是這么理解的…
二、vim的進(jìn)入及命令語法
在Linux系統(tǒng)Shell提示符下輸入vim和文件名稱后,就進(jìn)入vim編輯界面。若文件不存在則會新建一個文件,若存在則默認(rèn)編輯該文件。
[jock@localhost ~]$ vim #通過vim命令進(jìn)入vim編輯器,此時為命令模式,里面可以查看vim的版本、以及如何求助等信息
命令語法:
vim [選項] [文件]
vim [選項]
用vi替代vim也可以。命令中常見的各選項如下(具體用法還沒有實際操作過,先列出幾個):
+ # 在文件末尾開始
-R # 只讀模式
-b # 二進(jìn)制模式
-e # Ex模式
+<行數(shù)> # 從指定行開始
三、幫助命令
最先學(xué)會求助的方法
:help xxx # 顯示xxx命令的幫助,一般有這個夠用了
:help # 顯示幫助文檔,大致瀏覽即可
[jock@localhost ~]$ vimtutor # 查看官文教程,不過版本較老,不建議細(xì)看
四、插入模式、光標(biāo)移動、文件命令
1. 進(jìn)入插入模式
在shell中輸入vim文件名默認(rèn)進(jìn)入的是命令模式,在命令模式無法輸入數(shù)據(jù),需要在命令模式下使用以下命令進(jìn)入插入模式,從而實現(xiàn)在文件中輸入數(shù)據(jù)。
i # 在當(dāng)前位置插入
a # 在當(dāng)前位置后插入
A # 在當(dāng)前行尾插入
o # 在當(dāng)前行之后插入一行
O # 在當(dāng)前行之前插入一行
s # 刪除光標(biāo)位置的一個字符,然后進(jìn)入插入模式
S # 刪除光標(biāo)所在的行,然后進(jìn)入插入模式
2. 光標(biāo)移動
使用上下左右箭頭即可移動光標(biāo)。其他命令如下:
h # 左移一個字符
l # 移一個字符,通常用w向右移動到下一個單詞的第一個字母
j # 上移一個字符
k # 下移一個字符
#注意hljk前都可以在前面加上數(shù)字n,從而實現(xiàn)跨越的移動。比如5h,表示向左移動5個字符。
H # 使光標(biāo)移動到屏幕的頂部,head
M # 使光標(biāo)移動到屏幕的中間,middle
L # 使光標(biāo)移動到屏幕的底部
# 還可以使用[PU] [PD]實現(xiàn)上下翻頁
3. 文件命令
vim filename # 打開打個文件,若不存在則新建一個文件
vim file1 file2 file3... # 同時打開多個文件
:open file # 在vim窗口打開一個新文件
:split file # 在新窗口中打開文件
:bn # 切換到下一個文件
:bp # 切換到上一個文件
五、命令模式與末行模式操作
進(jìn)入末行模式需要先按[Esc]鍵進(jìn)入命令模式,再按冒號[:]則可以進(jìn)入末行模式。
1. 保存和退出
:q! # 不保存文件,強制退出vim,若退出報錯,直接用這個命令即可。
:q # 不保存文件,退出vim。
:wq # 保存文件,退出vim,w(write), q(quit)。
:wq! # 保存文件,并強制退出vim。
:w # 保存文件,但不退出vim。
:w filename # 將文件另存為filename。
:wq! filename # 將文件另存為filename,并強制退出vim。
:r filename # 打開另外一個已經(jīng)存在的文件filename。
:e filename # 新建名為filename的文件。
:f filename # 把當(dāng)前文件改名為filename文件。
:nw filename # 將第n行內(nèi)容保存到文件filename中,n代表數(shù)字。
:n1,n2w filename # 將第n1行開始到n2行結(jié)束的內(nèi)容保存到文件filename中,n1,n2代表數(shù)字。
:1,.w filename # 將第一行開始到光標(biāo)當(dāng)前位置的所有內(nèi)容保存到文件filename中。
:.,$w filename # 將從光標(biāo)開始位置到文件末尾的所有內(nèi)容保存到文件filename中。
:/str/w filename # 將包含有str的行寫到文件filename中,str代表字符。
:/str1/,/str2/w filename # 將包含有str1開始到str2結(jié)束的內(nèi)容寫入文件filename中,str1和str2代表字符。
:e! # 放棄所有修改,從上次保存文件開始再編輯命令歷史
ZZ: # 保存退出
ZQ # 不保存退出
2. 刪除命令
簡單的刪除跟word操作一樣。
:d # 刪除當(dāng)前行。
:nd # 刪除從當(dāng)前行開始的n行,n代表數(shù)字
:n1,n2 d # 刪除n1行開始到n2行結(jié)束的所有內(nèi)容
dG # 刪除從當(dāng)前行開始到文件末尾的所有內(nèi)容
:.,$d # 刪除從當(dāng)前行開始到文件末尾的所有內(nèi)容
:/str1/,/str2/d # 刪除從str1到str2之間的所有內(nèi)容,str1、str2代表字符。
3. 復(fù)制、移動、跳轉(zhuǎn)
:n1,n2 co n3 # 將n1和n2行之間的所有內(nèi)容復(fù)制到n3行后面
:n1,n2 m n3 # 將n1和n2行之間的所有內(nèi)容移動到n3行后面
:n # 跳轉(zhuǎn)到第n行
4. 替換、查找字符
#替換
:s/str1/str2/ # 將光標(biāo)所在行第一個字符str1替換為str2
:s/str1/str2/g # 將光標(biāo)所在行所有的字符str1替換為str2
:n1,n2s/str1/str2/g # 將n1行到n2行中所有的字符str1替換為str2
:%/str1/str2/g # 將文件中所有的字符str1替換為str2
:.,$s/str1/str2/g # 將光標(biāo)當(dāng)前位置開始到文件結(jié)束的所有字符str1替換為str2
#查找
/關(guān)鍵字 # 先按[/]鍵,在輸入想查找的字符,如果第一次查找的不是想要的,可以一直按[n]鍵會往后查找下一個關(guān)鍵字,按[N]反向查找。
?關(guān)鍵字 # 同/關(guān)鍵字
5. 撤銷和重復(fù)
u # 撤銷上一個操作,按多次[n]可以多次執(zhí)行撤銷
U # 取消所有操作
. # 再執(zhí)行一次剛剛完成的操作,相當(dāng)于恢復(fù)
6. 其他命令
:!command # 運行shell命令,command代表命令
:set number # 在文件中的每一行前面列出行號
:set nonumber # 取消在文件中的每一行前面列出行號
Ctrl +g # 列出光標(biāo)所在行行號
:set readonly # 設(shè)置文件為只讀模式
聲明:以上教程參考了於岳老師的《Linux命令應(yīng)用大詞典》一書。
后記:
我從本碩藥學(xué)零基礎(chǔ)轉(zhuǎn)行計算機,自學(xué)路上,走過很多彎路,也慶幸自己喜歡記筆記,把知識點進(jìn)行總結(jié),幫助自己成功實現(xiàn)轉(zhuǎn)行。
2020下半年進(jìn)入職場,深感自己的不足,所以2021年給自己定了個計劃,每日學(xué)一技,日積月累,厚積薄發(fā)。
如果你想和我一起交流學(xué)習(xí),歡迎大家關(guān)注我的微信公眾號每日學(xué)一技,掃描下方二維碼或者搜索每日學(xué)一技關(guān)注。
這個公眾號主要是分享和記錄自己每日的技術(shù)學(xué)習(xí),不定期整理子類分享,主要涉及 C – > Python – > Java,計算機基礎(chǔ)知識,機器學(xué)習(xí),職場技能等,簡單說就是一句話,成長的見證!
總結(jié)
以上是生活随笔為你收集整理的vim 退出命令(保存、放弃保存)_linux保存并退出vim(vi/vim)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第三次学JAVA再学不好就吃翔(part
- 下一篇: 腾达 F3 无线路由器无线信号放大模式上