在 Linux 下要刪除檔案,可以用 rm 指令很簡單地完成,但 rm 指定遇上容量很大的檔案時,例如 100GB 以上,刪除時會佔用很多系統資源,如果系統的資源很緊張,也有可能在執行時當掉。
以下會介紹在 Linux 下要刪除大容量檔案, 而不會佔用過多系統資源 (I/O) 的方法。
這個方法的原理是先清空檔案內容,然後再用 rm 刪除。Linux 下清空檔案的方法有很多,以下列出其中兩種,並假設要刪除的檔案是 big-file.log:
$ echo “” > big-file.log
$ cat /dev/null > big-file.log
這時原本很大的檔案已經清空,可以直接用 rm 刪除:
$ rm big-file.log