mv - 移動/重新命名檔案與目錄
語法
mv [選項] 來源 目標
行為差異
- 目標為 不存在的檔案名 → 重新命名 (來源僅能有一個)。
- 目標為 既有目錄 → 將來源 (可多個) 移入該目錄。
- 跨檔案系統移動 → 先複製再刪除來源,原有硬連結將遺失。
常用選項
| 選項 | 說明 |
-i | 互動模式,覆蓋前詢問 (y/n) |
-f | 強制覆蓋,不詢問,覆蓋 -i |
-n | 不覆蓋既有檔案 (GNU mv) |
-v | 顯示處理過程 |
-u | 僅在來源較新或目標不存在時移動 |
範例
mv file1.txt file2.txt # 重新命名
mv *.log /var/log/ # 移動多個檔案到目錄
mv -i src/ dest/ # 互動式移動目錄
rm - 刪除檔案與目錄
語法
rm [選項] 檔案...
常用選項
| 選項 | 說明 |
-f | 忽略不存在檔案,不提示 |
-r, -R | 遞迴刪除目錄及內容 |
-i | 互動式逐一確認 |
-v | 顯示刪除過程 |
--preserve-root | 拒絕刪除根目錄 (預設開啟) |
重要警示
- 刪除即永久,無法復原 (除非有備份或檔案系統支援快照)。
- 習慣加
-i 或先用 ls 確認清單。
- 刪除符號連結僅移除連結,原檔案不受影響。
範例
rm -i *.tmp # 逐一確認刪除暫存檔
rm -rf /tmp/old_dir # 強制遞迴刪除目錄 (極度危險,三思而行)