3.16 Linux刪除文件或目錄(rm命令)
當 linux 系統使用很長時間之后,可能會有一些已經沒用的文件(即垃圾),這些文件不但會消耗寶貴的硬盤資源,還是降低系統的運行效率,因此需要及時地清理。
rm 是強大的刪除命令,它可以永久性地刪除文件系統中指定的文件或目錄。在使用 rm 命令刪除文件或目錄時,系統不會產生任何提示信息。此命令的基本格式為:
[root@localhost ~]# rm[選項] 文件或目錄
選項:
-f:強制刪除(force),和 -i 選項相反,使用 -f,系統將不再詢問,而是直接刪除目標文件或目錄。
-i:和 -f 正好相反,在刪除文件或目錄之前,系統會給出提示信息,使用 -i 可以有效防止不小心刪除有用的文件或目錄。
-r:遞歸刪除,主要用于刪除目錄,可刪除指定目錄及包含的所有內容,包括所有的子目錄和文件。
注意,rm 命令是一個具有破壞性的命令,因為 rm 命令會永久性地刪除文件或目錄,這就意味著,如果沒有對文件或目錄進行備份,一旦使用 rm 命令將其刪除,將無法恢復,因此,尤其在使用 rm 命令刪除目錄時,要慎之又慎。
【例 1】基本用法。
rm 命令如果任何選項都不加,則默認執行的是"rm -i 文件名",也就是在刪除一個文件之前會先詢問是否刪除。例如:
[root@localhost ~]# touch cangls [root@localhost ~]# rm cangls rm:是否刪除普通空文件"cangls"?y \#刪除前會詢問是否刪除
【例 2】 刪除目錄。
如果需要刪除目錄,則需要使用"-r"選項。例如:
[root@localhost ~]# mkdir -p /test/lm/movie/jp \#遞歸建立測試目錄 [root@localhost ~]# rm /test rm:無法刪除"/test/": 是一個目錄 \#如果不加"-r"選項,則會報錯 [root@localhost ~]# rm -r /test rm:是否進入目錄"/test"?y rm:是否進入目錄"/test/lm/movie"?y rm:是否刪除目錄"/test/lm/movie/jp"?y rm:是否刪除目錄"/test/lm/movie"?y rm:是否刪除目錄"/test/lm"?y rm:是否刪除目錄"/test"?y \#會分別詢問是否進入子目錄、是否刪除子目錄
大家會發現,如果每級目錄和每個文件都需要確認,那么在實際使用中簡直是災難!
【例 3】強制刪除。
如果要刪除的目錄中有 1 萬個子目錄或子文件,那么普通的 rm 刪除最少需要確認 1 萬次。所以,在真正刪除文件的時候,我們會選擇強制刪除。例如:
[root@localhost ~]# mkdir -p /test/lm/movie/jp \#重新建立測試目錄 [root@localhost ~]# rm -rf /test \#強制刪除,一了百了
加入了強制功能之后,刪除就會變得很簡單,但是需要注意,數據強制刪除之后無法恢復,除非依賴第三方的數據恢復工具,如 extundelete 等。但要注意,數據恢復很難恢復完整的數據,一般能恢復 70%~80% 就很難得了。所以,與其把寶壓在數據恢復上,不如養成良好的操作習慣。
雖然 “-rf” 選項是用來刪除目錄的,但是刪除文件也不會報錯。所以,為了使用方便,一般不論是刪除文件還是刪除目錄,都會直接使用 “-rf” 選項。
Linux
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。