Linux rm 刪除檔案與目錄

rmRemove 的縮寫,用於刪除檔案或目錄。

警告: Linux 終端機中 沒有「垃圾桶」 (Recycle Bin)。使用 rm 刪除的檔案通常是 無法救回 的!按下 Enter 前請務必再三確認。

基本用法

rm [檔案名稱]

刪除單一檔案

rm file.txt

刪除多個檔案

rm file1.txt file2.txt

常用參數

-r:刪除目錄 (Recursive)

預設的 rm 無法刪除目錄。如果你想刪除一個資料夾,必須加上 -r(遞迴刪除目錄下所有內容)。

rm -r my_folder

-f:強制刪除 (Force)

這個參數會忽略不存在的檔案,並且 不會詢問任何確認。 通常用於 Script 或當你非常確定要刪除大量檔案時。

-i:刪除前詢問 (Interactive)

針對每個要刪除的檔案都詢問一次 y/n。這是最安全的做法,但在刪除大量檔案時會點到手軟。

rm -i important_file.txt

-v:顯示刪除過程 (Verbose)

顯示每一個被刪除的檔案名稱。

傳說中的 rm -rf

你可能在網路上看過這個指令:rm -rf。 它是 -r (遞迴) 和 -f (強制) 的組合技。

  • 用途:強制刪除指定目錄及其底下 所有 的檔案與子目錄,且 不詢問
  • 危險性:極高。

絕對要避免的指令

永遠不要執行(除非你真的知道你在做什麼,而且確定你在哪裡):

# 這是自殺指令,會把根目錄下所有東西刪光光
sudo rm -rf / 

安全使用建議

  1. 盡量不要用 -f,除非報錯說檔案有保護。
  2. 在執行 rm -rf 搭配萬用字元 * 時,建議先用 ls 檢查一下會選到哪些檔案。
    • 先跑:ls my_folder/* (確認一下)
    • 再跑:rm -rf my_folder/*
  3. 檢查路徑,避免在 / 或重要目錄下執行刪除。

刪除空目錄:rmdir

如果你只是要刪除一個 空目錄 (Empty Directory),可以使用 rmdir 指令。如果目錄裡有檔案,它會執行失敗,這是一個相對安全的刪除目錄方式。

rmdir empty_folder