天天看點

vim 退出指令(儲存、放棄儲存)_linux儲存并退出vim

大家好,又見面了,我是你們的朋友全棧君。

Vim的儲存、退出等基本指令(CentOS7 Vim7.4實用且詳細版本)

      • 測試環境VMware 12 Pro 下CentOS 7自帶vim7.4
      • 碎碎念(如果沒有時間可以直接跳過該部分,直接看指令)
      • 輸入vim指令前都需要先按Esc!!切換到指令模式
      • 一、vim的三種模式
      • 二、vim的進入及指令文法
      • 三、幫助指令
      • 四、插入模式、光标移動、檔案指令
        • 1. 進入插入模式
        • 2. 光标移動
        • 3. 檔案指令
      • 五、指令模式與末行模式操作
        • 1. 儲存和退出
        • 2. 删除指令
        • 3. 複制、移動、跳轉
        • 4. 替換、查找字元
        • 5. 撤銷和重複
        • 6. 其他指令
      • 聲明:以上教程參考了於嶽老師的《Linux指令應用大詞典》一書。

測試環境VMware 12 Pro 下CentOS 7自帶vim7.4

今天第一次接觸這個vim文本編輯器,拿到一個陌生的工具,我們想的當然是最短的時間掌握它的基本操作,體會到成就感。如果你跟我一樣,那麼這篇教程或許對你有所幫助。

碎碎念(如果沒有時間可以直接跳過該部分,直接看指令)

Linux下一切皆檔案,是以需要強大的文本編輯器,而vim就是Linux上一個功能強大且使用廣泛的文本編輯器。它可以對文本進行建立、查找、替換、删除、複制和粘貼等操作,并且它隻有指令沒有菜單,這個跟Windows裡面差别很大,是以一開始的觀念要轉換!

任何工具都應該是為人服務的,是以一開始不要整的太麻煩,會基本操作就可以了。

對于工具的各種指令,永遠不是靠記憶,而是像查單詞一樣,掌握基本用法,需要時,用幫助指令學習該指令功能即可。

輸入vim指令前都需要先按Esc!!切換到指令模式

一、vim的三種模式

  1. 正常模式——按Esc進入, 左下角顯示檔案名或為空 ,輸入vim指令前都需要先按Esc!該模式下又分為指令模式操作和末行模式操作。
  2. 插入模式——按i進入, 左下角顯示–INSERT–,這個是insert單詞的第一個字母,這樣好記,編輯檔案時很常用。
  3. 可視模式—— 按v或V進入,左下角顯示–VISUAL–閱讀模式,暫時我是這麼了解的…

二、vim的進入及指令文法

在Linux系統Shell提示符下輸入vim和檔案名稱後,就進入vim編輯界面。若檔案不存在則會建立一個檔案,若存在則預設編輯該檔案。

[jock@localhost ~]$ vim  #通過vim指令進入vim編輯器,此時為指令模式,裡面可以檢視vim的版本、以及如何求助等資訊           

複制

指令文法:

vim [選項] [檔案]

vim [選項]

用vi替代vim也可以。指令中常見的各選項如下(具體用法還沒有實際操作過,先列出幾個):

+        # 在檔案末尾開始
-R        # 隻讀模式
-b        # 二進制模式
-e        # Ex模式
+<行數>        # 從指定行開始           

複制

三、幫助指令

最先學會求助的方法

:help  xxx       # 顯示xxx指令的幫助,一般有這個夠用了
:help       # 顯示幫助文檔,大緻浏覽即可
[jock@localhost ~]$ vimtutor       # 檢視官文教程,不過版本較老,不建議細看           

複制

四、插入模式、光标移動、檔案指令

1. 進入插入模式

在shell中輸入vim檔案名預設進入的是指令模式,在指令模式無法輸入資料,需要在指令模式下使用以下指令進入插入模式,進而實作在檔案中輸入資料。

i        # 在目前位置插入
a        # 在目前位置後插入
A        # 在目前行尾插入
o        # 在目前行之後插入一行
O        # 在目前行之前插入一行
s        # 删除光标位置的一個字元,然後進入插入模式
S        # 删除光标所在的行,然後進入插入模式           

複制

2. 光标移動

使用上下左右箭頭即可移動光标。其他指令如下:

h       # 左移一個字元
l       # 移一個字元,通常用w向右移動到下一個單詞的第一個字母
j       # 上移一個字元
k       # 下移一個字元
#注意hljk前都可以在前面加上數字n,進而實作跨越的移動。比如5h,表示向左移動5個字元。
H        # 使光标移動到螢幕的頂部,head
M        # 使光标移動到螢幕的中間,middle
L        # 使光标移動到螢幕的底部
# 還可以使用[PU] [PD]實作上下翻頁           

複制

3. 檔案指令

vim filename       # 打開打個檔案,若不存在則建立一個檔案
vim file1 file2 file3...       # 同時打開多個檔案
:open file       # 在vim視窗打開一個新檔案
:split file       # 在新視窗中打開檔案
:bn       # 切換到下一個檔案
:bp       # 切換到上一個檔案           

複制

五、指令模式與末行模式操作

進入末行模式需要先按[Esc]鍵進入指令模式,再按冒号[:]則可以進入末行模式。

1. 儲存和退出

:q!       # 不儲存檔案,強制退出vim,若退出報錯,直接用這個指令即可。
:q       # 不儲存檔案,退出vim。
:wq       # 儲存檔案,退出vim,w(write), q(quit)。
:wq!       # 儲存檔案,并強制退出vim。
:w        # 儲存檔案,但不退出vim。
:w filename       # 将檔案另存為filename。
:wq! filename       # 将檔案另存為filename,并強制退出vim。
:r filename       # 打開另外一個已經存在的檔案filename。
:e filename       # 建立名為filename的檔案。
:f filename       # 把目前檔案改名為filename檔案。
:nw filename       # 将第n行内容儲存到檔案filename中,n代表數字。
:n1,n2w filename       # 将第n1行開始到n2行結束的内容儲存到檔案filename中,n1,n2代表數字。
:1,.w filename       # 将第一行開始到光标目前位置的所有内容儲存到檔案filename中。
:.,$w filename       # 将從光标開始位置到檔案末尾的所有内容儲存到檔案filename中。
:/str/w filename       # 将包含有str的行寫到檔案filename中,str代表字元。
:/str1/,/str2/w filename       # 将包含有str1開始到str2結束的内容寫入檔案filename中,str1和str2代表字元。
:e!       # 放棄所有修改,從上次儲存檔案開始再編輯指令曆史
ZZ:       # 儲存退出
ZQ       # 不儲存退出           

複制

2. 删除指令

簡單的删除跟word操作一樣。

:d        # 删除目前行。
:nd        # 删除從目前行開始的n行,n代表數字
:n1,n2 d        # 删除n1行開始到n2行結束的所有内容
dG       # 删除從目前行開始到檔案末尾的所有内容
:.,$d        # 删除從目前行開始到檔案末尾的所有内容
:/str1/,/str2/d        # 删除從str1到str2之間的所有内容,str1、str2代表字元。           

複制

3. 複制、移動、跳轉

:n1,n2 co n3        # 将n1和n2行之間的所有内容複制到n3行後面
:n1,n2 m n3        # 将n1和n2行之間的所有内容移動到n3行後面
:n        # 跳轉到第n行           

複制

4. 替換、查找字元

#替換
:s/str1/str2/        # 将光标所在行第一個字元str1替換為str2
:s/str1/str2/g        # 将光标所在行所有的字元str1替換為str2
:n1,n2s/str1/str2/g        # 将n1行到n2行中所有的字元str1替換為str2
:%/str1/str2/g        # 将檔案中所有的字元str1替換為str2
:.,$s/str1/str2/g        # 将光标目前位置開始到檔案結束的所有字元str1替換為str2
#查找
/關鍵字       # 先按[/]鍵,在輸入想查找的字元,如果第一次查找的不是想要的,可以一直按[n]鍵會往後查找下一個關鍵字,按[N]反向查找。
?關鍵字       # 同/關鍵字           

複制

5. 撤銷和重複

u        # 撤銷上一個操作,按多次[n]可以多次執行撤銷
U        # 取消所有操作
.        # 再執行一次剛剛完成的操作,相當于恢複           

複制

6. 其他指令

:!command        # 運作shell指令,command代表指令
:set number        # 在檔案中的每一行前面列出行号
:set nonumber        # 取消在檔案中的每一行前面列出行号
Ctrl +g       # 列出光标所在行行号
:set readonly        # 設定檔案為隻讀模式           

複制

聲明:以上教程參考了於嶽老師的《Linux指令應用大詞典》一書。

後記:

我從本碩藥學零基礎轉行計算機,自學路上,走過很多彎路,也慶幸自己喜歡記筆記,把知識點進行總結,幫助自己成功實作轉行。

2020下半年進入職場,深感自己的不足,是以2021年給自己定了個計劃,每日學一技,日積月累,厚積薄發。

如果你想和我一起交流學習,歡迎大家關注我的微信公衆号

每日學一技

,掃描下方二維碼或者搜尋

每日學一技

關注。

這個公衆号主要是分享和記錄自己每日的技術學習,不定期整理子類分享,主要涉及 C – > Python – > Java,計算機基礎知識,機器學習,職場技能等,簡單說就是一句話,成長的見證!

釋出者:全棧程式員棧長,轉載請注明出處:https://javaforall.cn/172541.html原文連結:https://javaforall.cn