小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Linux 中刪除目錄的多種方法

 KEruy 2019-10-30

有幾種不同的方法可以刪除 Linux 系統(tǒng)中的目錄。如果您使用桌面文件管理器(如 Gnome 的文件管理器或 KDE 的 Dolphin) ,則可以使用管理器的圖形用戶界面刪除文件和目錄。但是,如果您正在使用無頭服務(wù)器或想要一次刪除多個(gè)目錄,最好的選擇是從命令行刪除目錄(文件夾)。

在這篇文章中,我們將介紹如何使用 rmdir , rm 和 find 命令刪除 Linux 中的目錄。

在你開始之前

使用桌面文件管理器刪除目錄時(shí),該目錄實(shí)際上已移至“廢紙簍”,并且可以輕松恢復(fù)。

從命令行刪除文件或目錄時(shí)要格外小心,因?yàn)橐坏┦褂帽疚闹薪榻B的命令刪除目錄,就無法完全恢復(fù)。

在大多數(shù) Linux 文件系統(tǒng)上,刪除目錄需要對目錄及其內(nèi)容具有寫權(quán)限。否則您將收到“不允許操作”錯(cuò)誤。

必須使用反斜杠 (/) 轉(zhuǎn)義其中包含空格的目錄名稱。

刪除目錄 rmdir

rmdir 是一個(gè)用于刪除空目錄的命令行實(shí)用程序。只有當(dāng)目錄為空時(shí)才需要?jiǎng)h除目錄,而不需要檢查目錄是否為空。

要?jiǎng)h除目錄 rmdir ,請鍵入命令,然后鍵入要?jiǎng)h除的目錄的名稱。例如,要?jiǎng)h除名為 linuxmi 的目錄,請鍵入:

linuxidc@linuxidc:~$ rmdir linuxmi

如果目錄不為空,您將收到以下錯(cuò)誤:

rmdir: 刪除 'linuxmi' 失敗: 目錄非空

在這種情況下,您需要使用該 rm 命令或手動(dòng)刪除目錄內(nèi)容,然后才能刪除它。

刪除目錄 rm

rm 是一個(gè)用于刪除文件和目錄的命令行實(shí)用程序。與命令不同 rmdir, rm 可以刪除空目錄和非空目錄。

默認(rèn)情況下,在沒有任何選項(xiàng)的情況下使用時(shí) rm 不會(huì)刪除目錄 要?jiǎng)h除空目錄,請使用 -d(--dir) 選項(xiàng)。 如果要?jiǎng)h除非空目錄和其中的所有內(nèi)容,請使用 -r(--recursive 或 -R) 選項(xiàng)。

例如,要?jiǎng)h除一個(gè)名為 linuxmi 及其所有內(nèi)容的目錄,您可以鍵入:

rm -r linuxmi

如果目錄中的目錄或文件受到寫保護(hù),系統(tǒng)將提示您確認(rèn)刪除。要在不提示的情況下刪除目錄,請使用以下 -f 選項(xiàng):

rm -r dirname

要一次刪除多個(gè)目錄,請使用 rm 命令,后跟由空格分隔的目錄名稱。下面的命令將刪除每個(gè)列出的目錄及其內(nèi)容:

rm -r linuxmi linuxmi linuxidc

該 -i 選項(xiàng)告訴 rm 提示您確認(rèn)刪除每個(gè)子目錄和文件。如果目錄包含大量文件,這可能有點(diǎn)煩人,因此您可以考慮使用 -I 在繼續(xù)刪除之前只提示您一次的選項(xiàng)。

rm -rI linuxidc

確定要?jiǎng)h除目錄請輸入 y 并點(diǎn)擊 Enter 。

rm: remove 1 argument recursively? y

您還可以使用常規(guī)擴(kuò)展來匹配和刪除多個(gè)目錄。例如,要?jiǎng)h除當(dāng)前目錄中以所有 _bak 結(jié)尾的所有第一級目錄或者文件 ,您將使用以下命令:

rm -r *_bak

刪除目錄時(shí)使用常規(guī)擴(kuò)展可能存在風(fēng)險(xiǎn)。建議首先使用該 ls 命令列出目錄,以便在運(yùn)行 rm 命令之前查看將刪除的目錄。

刪除目錄 find

find 是一個(gè)命令行實(shí)用程序,允許您根據(jù)給定的表達(dá)式搜索文件和目錄,并對每個(gè)匹配的文件或目錄執(zhí)行操作。

最常見的情況是使用 find 命令根據(jù)模式刪除目錄。例如,要?jiǎng)h除當(dāng)前工作目錄中所有以 _cache 結(jié)尾的目錄,請運(yùn)行:

find . -type d -name '*_cache' -exec rm -r {} +

讓我們分析一下上面的命令:
·.- 遞歸搜索當(dāng)前工作目錄(.)。
·-type d - 將搜索限制為目錄。
·-name '*_cache' - 僅搜索以 _cache 結(jié)尾的目錄
·-exec - 執(zhí)行帶有可選參數(shù)的外部命令,在這種情況下是 rm -r 。
·{} +- 將找到的文件追加到 rm 命令的末尾。

刪除所有空目錄

要?jiǎng)h除目錄樹中的所有空目錄,您將使用:

find /dir -type d -empty -delete

以下是對所用選項(xiàng)的解釋:
·/dir- 遞歸搜索 /dir 目錄。
·-type d - 將搜索限制為目錄。
·-empty - 將搜索限制為僅空目錄。
·-delete - 刪除子樹中所有找到的空目錄。 -delete 只能刪除空目錄。

請謹(jǐn)慎使用 -delete 選項(xiàng)。 find 命令行被計(jì)算為表達(dá)式,如果首先添加該 -delete 選項(xiàng),該命令將刪除指定起始點(diǎn)下方的所有內(nèi)容。始終使用 -delete 作為最后一個(gè)選項(xiàng),在刪除之前,首先測試該命令而不使用該 -delete 選項(xiàng)。

/bin/rm: Argument list too long

使用該 rm 命令刪除包含大量文件的目錄時(shí),會(huì)出現(xiàn)此錯(cuò)誤消息。發(fā)生這種情況是因?yàn)槲募?shù)大于命令行參數(shù)大小的系統(tǒng)限制。

這個(gè)問題有幾種不同的解決方案。例如,您可以 cd 手動(dòng)或使用循環(huán)逐個(gè)刪除子目錄到目錄。

最簡單的解決方案是首先使用該 find 命令刪除目錄中的所有文件,然后刪除目錄:

find /dir -type f -delete && rm -r /dir

總結(jié)

使用 rm 和 find 您可以快速有效地刪除基于不同標(biāo)準(zhǔn)的目錄。

刪除目錄是一個(gè)簡單而簡單的過程,但您必須小心不要?jiǎng)h除重要數(shù)據(jù)。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多