rm
用於刪除給定的文件和目錄
補充說明
rm 命令 可以刪除一個目錄中的一個或多個文件或目錄,也可以將某個目錄及其下屬的所有文件及其子目錄均刪除掉。對於鏈接文件,只是刪除整個鏈接文件,而原有文件保持不變。
注意:使用rm命令要格外小心。因爲一旦刪除了一個文件,就無法再恢復它。所以,在刪除文件之前,最好再看一下文件的內容,確定是否真要刪除。rm命令可以用-i選項,這個選項在使用文件擴展名字符刪除多個文件時特別有用。使用這個選項,系統會要求你逐一確定是否要刪除。這時,必須輸入y並按Enter鍵,才能刪除文件。如果僅按Enter鍵或其他字符,文件不會被刪除。
語法
1rm (選項)(參數)
選項
1-d:直接把欲刪除的目錄的硬連接數據刪除成0,刪除該目錄;
2-f:強制刪除文件或目錄;
3-i:刪除已有文件或目錄之前先詢問用戶;
4-r或-R:遞歸處理,將指定目錄下的所有文件與子目錄一併處理;
5--preserve-root:不對根目錄進行遞歸操作;
6-v:顯示指令的詳細執行過程。
參數
文件:指定被刪除的文件列表,如果參數中含有目錄,則必須加上-r
或者-R
選項。
實例
交互式刪除當前目錄下的文件test和example
1rm -i test example
2Remove test ?n(不刪除文件test)
3Remove example ?y(刪除文件example)
刪除當前目錄下除隱含文件外的所有文件和子目錄
1# rm -r *
應注意,這樣做是非常危險的!
刪除當前目錄下的 package-lock.json 文件
1find . -name "package-lock.json" -exec rm -rf {} \;
*查找 .html 結尾的文件並刪除
1find ./docs -name "*.html" -exec rm -rf {} \;
*刪除當前項目下 .html 結尾的文件
1rm -rf *.html
刪除當前目錄下的 node_modules 目錄
1find . -name 'node_modules' -type d -prune -exec rm -rf '{}' +
刪除文件
1# rm 文件1 文件2 ...
2rm testfile.txt
刪除目錄
rm -r [目錄名稱] -r 表示遞歸地刪除目錄下的所有文件和目錄。 -f 表示強制刪除
1rm -rf testdir
2rm -r testdir
刪除操作前有確認提示
rm -i [文件/目錄]
1rm -r -i testdir
批量刪除 icons
文件夾中的子文件夾中的 data 文件夾
1rm -rf icons/**/data
rm 忽略不存在的文件或目錄
-f 選項(LCTT 譯註:即 “force”)讓此次操作強制執行,忽略錯誤提示
1rm -f [文件...]
僅在某些場景下確認刪除
選項 -I,可保證在刪除超過 3 個文件時或遞歸刪除時(LCTT 譯註: 如刪除目錄)僅提示一次確認。
1rm -I file1 file2 file3
刪除根目錄
當然,刪除根目錄(/)是 Linux 用戶最不想要的操作,這也就是爲什麼默認 rm 命令不支持在根目錄上執行遞歸刪除操作。 然而,如果你非得完成這個操作,你需要使用 --no-preserve-root 選項。當提供此選項,rm 就不會特殊處理根目錄(/)了。
1不給實例了,操作系統都被你刪除了,你太壞了😆
rm 顯示當前刪除操作的詳情
1rm -v [文件/目錄]
來源:https://github.com/jaywcjlove/linux-command
版權申明:
- 未標註來源的內容皆為原創,未經授權請勿轉載(因轉載後排版往往錯亂、內容不可控、無法持續更新等);
- 非營利為目的,演繹本博客任何內容,請以'原文出處'或者'參考鏈接'等方式給出本站相關網頁地址(方便讀者)。