Site icon Li-Edward

Linux vi vim 有什麼不一樣? Linux vim 的教學使用與範例

Linux vi vim 有什麼不一樣? Linux vim 的教學使用與範例

Linux vi vim 有什麼不一樣? Linux vim 的教學使用與範例





嗨,大家好!今天我們要來聊聊 Linux 上的編輯器,特別是兩個廣受歡迎的編輯器:vi 和 vim。或許你已經聽說過它們,但你知道它們有什麼不同嗎?而且,我們還會深入探討 vim 的一項強大功能:批次的檔案處理。準備好了嗎?讓我們一起來探索這個有趣的主題!

認識 vi 與 vim 兩者的異同

首先,讓我們來談談 vi 和 vim 的基本概念。vi 是一個老牌的文本編輯器,存在已久,甚至可以在許多 Unix-like 系統中找到它的蹤影。vim 則是 vi 的進化版,全名為 “Vi IMproved”。vim 在 vi 的基礎上新增了許多強大的功能和快捷鍵,讓編輯變得更加高效和方便。

vim 的特點

vim 的強大之處,批次檔案處理

現在,讓我們轉向 vim 批次的檔案處理驚嘆的功能,vim 讓這個過程變得非常簡單。

批次新增(插入) :%normal

在 Vim 編輯器中,:normal 命令用於在正常模式下執行一系列的普通鍵盤按鍵。它的作用是將一組鍵盤按鍵在正常模式下逐一執行,就好像你手動按下那些按鍵一樣。

假設你有一個資料夾裡有許多以 “.txt” 結尾的檔案,現在你想在每個檔案的第一行插入一個歡迎語句。這時,你可以使用下面的步驟:

  1. 在命令行中輸入 vim *.txt 以同時打開所有的 “.txt” 檔案。
  2. 在 vim 的正常模式下,輸入 :%normal Welcome to our website!。這會在每個檔案的第一行插入歡迎語句。
  3. 最後,在命令模式下輸入 :wq 儲存並離開所有檔案。

批次修改:HTML 標題 :%s/要替換的字串/新的內容/g

讓我們看一個更具體的範例。假設你有一個資料夾,裡面有多個 HTML 檔案,你想在每個檔案中將標題文字替換為更加吸引人的內容。這時,vim 的批次處理功能再次派上用場:

  1. 在命令行中輸入 vim *.html 以打開所有的 HTML 檔案。
  2. 在 vim 的正常模式下,輸入 :%s/<h1>.*<\/h1>/<h1>Welcome to Our Amazing Website<\/h1>/g。這個命令會將所有檔案中的標題替換為新的內容。
  3. 最後,在命令模式下輸入 :wq 儲存並離開所有檔案。

批次修改:統一日期格式 Regular用法 :%s/要替換的字串/新的內容/g

假設你有一個資料夾,裡面有許多不同格式的日期,而你希望將它們統一成 “YYYY-MM-DD” 的格式。這時,vim 的批次修改功能可以幫助你輕鬆實現:

  1. 在命令行中輸入 vim *.txt 以打開所有的 “.txt” 檔案。
  2. 在 vim 的正常模式下,輸入 :%s/\(\d\{4\}\)\/\(\d\{2\}\)\/\(\d\{2\}\)/\1-\2-\3/g。這個命令會尋找並替換所有不同格式的日期。
  3. 最後,在命令模式下輸入 :wq 儲存並離開所有檔案。

批次刪除:移除特定行數

假設你有一個檔案,裡面有數百行文字,而你想刪除其中的前 10 行。vim 的批次刪除功能可以幫助你迅速完成這個任務:

  1. 在命令行中輸入 vim *.txt 以打開所有的 .txt 檔案。
  2. 在 vim 的正常模式下,輸入 :%g/^.*$/d3。這個命令將刪除每個檔案的第三行。
  3. 最後,在命令模式下輸入 :wq 儲存並離開所有檔案。

總結

通過本文,我們深入了解了 vi 和 vim 之間的不同,並學習了如何使用 vim 的批次處理功能來處理多個檔案。如果你已經熟悉 vi,切換到 vim 將為你帶來更多便利的功能。如果你是初學者,直接學習 vim 也是一個不錯的選擇。vim 是一個強大且高度可定制的工具,隨著你的熟練程度提高,你將能夠更有效地處理任務。現在,不妨動手嘗試一下,在實際操作中體驗一下這些功能吧!

延伸閱讀:如何在 Linux 遠端同步與備份 ? 使用 rsync 的教學與 crontab 定期備份與排程範例

延伸閱讀:chmod 是什麼 ? 5分鐘學會 Linux 檔案權限設定





主頁 » LINUX » 實用技巧 » Linux vi vim 有什麼不一樣? Linux vim 的教學使用與範例
Exit mobile version