歡迎光臨
每天分享高質量文章

如何使用 Vim 編輯器編輯多個檔案 | Linux 中國

在本教程中,我們將學習使用 vim 編輯器同時編輯多個檔案。相信我,很有意思噠。
— Sk


致謝
編譯自 | https://www.ostechnix.com/how-to-edit-multiple-files-using-vim-editor/ 
 作者 | Sk
 譯者 | jessie-pang ? ? 共計翻譯:10 篇 貢獻時間:113 天

有時候,您可能需要修改多個檔案,或要將一個檔案的內容複製到另一個檔案中。在圖形用戶界面中,您可以在任何圖形文本編輯器(如 gedit)中打開檔案,並使用 CTRL + C 和 CTRL + V 複製和粘貼內容。在命令列樣式下,您不能使用這種編輯器。不過別擔心,只要有 vim 編輯器就有辦法。在本教程中,我們將學習使用 vim 編輯器同時編輯多個檔案。相信我,很有意思噠。

安裝 Vim

Vim 編輯器可在大多數 Linux 發行版的官方軟體倉庫中找到,所以您可以用預設的軟體包管理器來安裝它。例如,在 Arch Linux 及其變體上,您可以使用如下命令:

  1. $ sudo pacman -S vim

在 Debian 和 Ubuntu 上:

  1. $ sudo apt-get install vim

在 RHEL 和 CentOS 上:

  1. $ sudo yum install vim

在 Fedora 上:

  1. $ sudo dnf install vim

在 openSUSE 上:

  1. $ sudo zypper install vim

使用 Linux 的 Vim 編輯器同時編輯多個檔案

現在讓我們談談正事,我們可以用兩種方法做到這一點。

方法一

有兩個檔案,即 file1.txt 和 file2.txt,帶有一堆隨機單詞:

  1. $ cat file1.txt

  2. ostechnix

  3. open source

  4. technology

  5. linux

  6. unix

  7. $ cat file2.txt

  8. line1

  9. line2

  10. line3

  11. line4

  12. line5

現在,讓我們同時編輯這兩個檔案。請運行:

  1. $ vim file1.txt file2.txt

Vim 將按順序顯示檔案的內容。首先顯示第一個檔案的內容,然後顯示第二個檔案,依此類推。

在檔案中切換

要移至下一個檔案,請鍵入:

  1. :n

要傳回到前一個檔案,請鍵入:

  1. :N

如果有任何未儲存的更改,Vim 將不允許您移動到下一個檔案。要儲存當前檔案中的更改,請鍵入:

  1. ZZ

請註意,是兩個大寫字母 ZZSHIFT + zz)。

要放棄更改並移至上一個檔案,請鍵入:

  1. :N!

要查看當前正在編輯的檔案,請鍵入:

  1. :buffers

您將在底部看到加載檔案的串列。

要切換到下一個檔案,請輸入 :buffer,後跟緩衝區編號。例如,要切換到第一個檔案,請鍵入:

  1. :buffer 1

打開其他檔案進行編輯

目前我們正在編輯兩個檔案,即 file1.txt 和 file2.txt。我想打開另一個名為 file3.txt 的檔案進行編輯。

您會怎麼做?這很容易。只需鍵入 :e,然後輸入如下所示的檔案名即可:

  1. :e file3.txt

現在你可以編輯 file3.txt 了。

要查看當前正在編輯的檔案數量,請鍵入:

  1. :buffers

請註意,對於使用 :e 打開的檔案,您無法使用 :n 或 :N 進行切換。要切換到另一個檔案,請輸入 :buffer,然後輸入檔案緩衝區編號。

將一個檔案的內容複製到另一個檔案中

您已經知道瞭如何同時打開和編輯多個檔案。有時,您可能想要將一個檔案的內容複製到另一個檔案中。這也是可以做到的。切換到您選擇的檔案,例如,假設您想將 file1.txt 的內容複製到 file2.txt 中:

首先,請切換到 file1.txt

  1. :buffer 1

將光標移動至在想要複製的行的前面,並鍵入yy 以抽出(複製)該行。然後,移至 file2.txt

  1. :buffer 2

將光標移至要從 file1.txt 粘貼複製行的位置,然後鍵入 p。例如,您想要將複製的行粘貼到 line2 和 line3 之間,請將滑鼠光標置於行前並鍵入 p

輸出示例:

  1. line1

  2. line2

  3. ostechnix

  4. line3

  5. line4

  6. line5

要儲存當前檔案中所做的更改,請鍵入:

  1. ZZ

再次提醒,是兩個大寫字母 ZZ(SHIFT + z)。

儲存所有檔案的更改並退出 vim 編輯器,鍵入:

  1. :wq

同樣,您可以將任何檔案的任何行複製到其他檔案中。

將整個檔案內容複製到另一個檔案中

我們知道如何複製一行,那麼整個檔案的內容呢?也是可以的。比如說,您要將 file1.txt的全部內容複製到 file2.txt 中。

先打開 file2.txt

  1. $ vim file2.txt

如果檔案已經加載,您可以通過輸入以下命令切換到 file2.txt

  1. :buffer 2

將光標移動到您想要粘貼 file1.txt 的內容的位置。我想在 file2.txt 的第 5 行之後粘貼 file1.txt 的內容,所以我將光標移動到第 5 行。然後,鍵入以下命令並按回車鍵:

  1. :r file1.txt

這裡,r 代表 “read”。

現在您會看到 file1.txt 的內容被粘貼在 file2.txt 的第 5 行之後。

  1. line1

  2. line2

  3. line3

  4. line4

  5. line5

  6. ostechnix

  7. open source

  8. technology

  9. linux

  10. unix

要儲存當前檔案中的更改,請鍵入:

  1. ZZ

要儲存所有檔案的所有更改並退出 vim 編輯器,請輸入:

  1. :wq

方法二

另一種同時打開多個檔案的方法是使用 -o 或 -O 標誌。

要在水平視窗中打開多個檔案,請運行:

  1. $ vim -o file1.txt file2.txt

要在視窗之間切換,請按 CTRL-w w(即按 CTRL + w 並再次按 w)。或者,您可以使用以下快捷方式在視窗之間移動:

◈ CTRL-w k – 上面的視窗
◈ CTRL-w j – 下麵的視窗

要在垂直視窗中打開多個檔案,請運行:

  1. $ vim -O file1.txt file2.txt file3.txt

要在視窗之間切換,請按 CTRL-w w(即按 CTRL + w 並再次按 w)。或者,使用以下快捷方式在視窗之間移動:

◈ CTRL-w l – 左面的視窗
◈ CTRL-w h – 右面的視窗

其他的一切都與方法一的描述相同。

例如,要列出當前加載的檔案,請運行:

  1. :buffers

在檔案之間切換:

  1. :buffer 1

打開其他檔案,請鍵入:

  1. :e file3.txt

將檔案的全部內容複製到另一個檔案中:

  1. :r file1.txt

方法二的唯一區別是,只要您使用 ZZ 儲存對當前檔案的更改,檔案將自動關閉。然後,您需要依次鍵入 :wq 來關閉檔案。但是,如果您按照方法一進行操作,輸入 :wq 時,所有更改將儲存在所有檔案中,並且所有檔案將立即關閉。

有關更多詳細信息,請參閱手冊頁。

  1. $ man vim

建議閱讀

您現在掌握瞭如何在 Linux 中使用 vim 編輯器編輯多個檔案。正如您所見,編輯多個檔案並不難。Vim 編輯器還有更強大的功能。我們接下來會提供更多關於 Vim 編輯器的內容。

再見!


via: https://www.ostechnix.com/how-to-edit-multiple-files-using-vim-editor/

作者:SK[2] 譯者:jessie-pang 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

赞(0)

分享創造快樂

© 2021 知識星球   网站地图