Přejít na hlavní obsah
Sleva 50% všechny plány, omezený čas. Od $2.48/mo
12 min left
Servery a OS

Jak bezpečně smazat adresář v Linuxu: rmdir, rm -r, find

Nick Silver Autor: Nick Silver 12 min čtení Aktualizováno Sep 22, 2025
A lone ultrareal laptop at 3/4 angle on a wet surface; screen shows two crisp terminal lines: ls -ld -- '$DIR' rm -I -r -- '$DIR' From the right-side port, a cyan/magenta holographic ribbon curves out to a manila folder floating to the right of the laptop; the folder’s right half frays into fine paper dust mid-air. BR2049 lighting, UV rim, subtle rain specks, sodium-amber haze + single low skyline only.

Zvolte správný nástroj a mazání složek na Linux se stane hrou. Použijte rmdir pro prázdné cesty, rm -r pro adresáře, které ještě obsahují soubory, a najít pokud chcete smazat jen obsah. Takhle se maže adresář v Linux, s rozumným defaultním chováním, rychlou kontrolou a opravami chyb, které vám stojí v cestě. Pokud vás zajímá hlavně rychlost, podívejte se na tabulku přehledu a pak pokračujte čtením pro podrobnost na bezpečnostní opatření.

 

 

Přehled příkazů: Kopírování, vkládání, posun dál

Než se pustíme do detailů, tady jsou časté úkoly na jednom místě. Kopíruj ze středního sloupce a pak si přečti poznámku.

Úkol Nejbezpečnější rychlý příkaz Dodatečné příznaky nebo poznámky
Smazat prázdný adresář rmdir ADRESÁŘ or rm -d DIR Přidat -p aby se smazaly i nadřazené adresáře, pokud budou prázdné.
Smazat neprázdný adresář s dotazem rm -I -r DIR Vyvážené rychlosti a bezpečnosti.
Vynutit smazání neprázdného adresáře rm -rf — DIR Ověřit pomocí ls -ld — DIR než ho spustíš.
Zachovat nadřazený adresář, vyprázdnit obsah find DIR -mindepth 1 -delete Zvládá i skryté soubory a složky.
Smazat pouze prázdné adresáře find DIR -type d -empty -delete Ideální čistka po nasazení.
Smazat podle názvu find DIR -type d -name 'cache*' -prune -exec rm -rf {} + Běží rychle i na velkých stromech adresářů.

Měj si tohle kdyžsi po ruce, když budeš řešit, jak smazat adresář v Linux. 

Odstranění prázdných složek pomocí rmdir or rm -d

Ultrareal steel file-cabinet drawer pulled fully open, rails and felt pads visible, absolutely empty. Tiny embossed stickers on the front: RMDIR and EMPTY. A soft sodium-amber haze drifts behind a faint skyline silhouette; cyan signage glints along the brushed metal lip; micromotes and hairline scratches read true.

Prázdné adresáře jsou případem s nízkým rizikem. Pokud potřebujete odstranit pouze jeden uzel, rmdir dělá přesně to; pokud preferuješ zůstat u rm, použijte rm -d se stejným výsledkem. Oba příkazy se zastaví na cesty, které nejsou prázdné, což začátečníkům, kteří se učí odstraňovat adresáře z terminálu, poskytuje užitečnou ochranu.

  • rmdir PROJECT/tmp odstraní prázdnou složku a skončí bez chyby, pokud již neexistuje.
  • rmdir -p foo/bar/baz odstraní cestu a poté nadřazené adresáře, pokud se stanou prázdnými, čímž vyčistí celou strukturu v jednom kroku.
  • rm -d empty_folder smaže pouze v případě, že je adresář prázdný, ekvivalent příkazu rmdir pro ty, kteří žijí na rm.
  • rmdir --ignore-fail-on-non-empty DIR skryje text chyby „není prázdné" ve skriptech, kde záleží na čistotě výstupu.
  • Přidat -v například pro zpětnou vazbu, rmdir -pv foo/bar/baz.

Běžný problém při mazání adresáře v Linux je, že pokud složka stále obsahuje soubory, rmdir odmítá běžet. To je tvůj signál přejít na rekurzi. 

Přečti si také: Připojte se k serveru Linux pomocí XRDP

Smazání neprázdných adresářů pomocí rm

Ultrareal industrial paper shredder as the single hero; mouth loaded with multiple manila folders and dividers. The folders are clearly stuffed with paper. A tiny metal badge on the front reads RM -R; a small hazard triangle beside it reads FORCE.

Rekurzivní odstranění je rm -r or rm -rf. Jde v podstatě o výměnu mezi rychlostí a dotazy. Vývojáři, kteří se učí mazat neprázdné adresáře v Linux, začínají s rm -r a přidají dotaz. Týmy, které automatizují, přidávají -f poté, co si ověří kontroly cest.

Začněte se vzory, které vás uklidňují:

  • Vyzvat jednou rm -I -r DIR se zeptá jednou před sestupem, lepší volba než -i na velkých stromech.
  • Dotazy na vše: rm -ri DIR je pomalý, ale užitečný na malých stromech, když chcete vidět každý krok.
  • Síla a rekurze: rm -rf DIR přeskakuje dotazy a většinu chyb; ověřte pomocí pwd, ls -ld — DIR, a echo "$DIR" než stisknete Enter.
  • Podrobný: -v vypíše každou smazanou cestu, například rm -rfv build/.
  • Ochrana kořene a přípojných bodů: moderní systémy blokují rm -rf / přes –preserve-rootv skriptech přidejte –one-file-system aby nedošlo k překročení přípojných bodů.

Než smaženou sílu použijete na zaneprázdněném počítači, věnujte půl minuty ověření cíle. Vypište jej pomocí ls -ld — "$DIR", pak se podívejte na uvozovky a glóby. Čistý způsob, jak se naučit mazat adresář v Linux, je vyzkoušet -I nejdřív, pak to zopakujte bez interakce. Klidné kontroly, opakovatelné zvyky.

linux-vps Linux hosting jednoduše

Chceš lepší způsob, jak hostovat své weby a webové aplikace? Vyvíjíš něco nového? Prostě nemáš rád Windows? Proto máme Linux VPS.

Získej svůj Linux VPS

Zvláštní názvy, pomlčky na začátku a skryté problémy

A stretch of caution tape pulled taut across frame, ultrareal vinyl texture with subtle wrinkles. Black print repeats -TMP at intervals after each CAUTION.

Některé cesty začínají pomlčkou nebo obsahují bajty, které komplikují parsování. Předejte pro zastavení parsování voleb, nebo přidejte ./ před název.

Bezpečné způsoby, jak cílit podivné názvy:

rm -r -- --weird
rm -r ./-cache

Tyto malé zvyky činí mazání adresáře v Linux na sdílených serverech a vzdálených relacích výrazně méně stresujícím. Pokud chcete zachovat nadřazený adresář, ale odebrat jeho obsah, přepněte na příkazy se znalostem hloubky; to je předmětem naší příručky Jak smazat adresář v Linux.

Zachovat složku, vyprázdnit, co je uvnitř

Ultrareal manila folder with a small bottom trapdoor built into the tab-side corner, hinged and slightly open so a faint stream of holographic “file shards” falls away. Etched on the tab: FIND and MIND1 (for -mindepth 1)

Hodně prací potřebuje čistý adresář místo chybějícího. Rotace protokolů, pipeline buildů, údržba VPS. Dva vzory pokrývají, jak smazat všechny soubory v adresáři v Linux a přitom zachovat nadřazený adresář.

  • Přeskočit nadřazený adresář s najít:
find /var/tmp/app -mindepth 1 -delete
  • Nebo proveďte rm na dávkách:
find ./cache -mindepth 1 -exec rm -rf {} +

Oba zpracovávají skryté položky (včetně souborů začínajících tečkou), což je místo, kde jednoduchý rm * je nenajde. Pokud jste se ptali, jak odstranit všechny soubory v adresáři na Linux, toto je spolehlivý postup.

Jednořádkové příkazy jsou praktické, ale mnoho týmů potřebuje filtrování podle jména nebo hloubky. Zde přichází na řadu najít to dává jasný rozsah bez hádat.

Přečti si také: Výpis spuštěných služeb na Linux

Cílené mazání s najít: Jména, hloubka, prořezávání

Možná chcete smazat jen cache adresáře, jen složky na první úrovni nebo jen archivované logy. Tady máte kompaktní sadu vzorů pro najít smazat adresář jobs.

Úkol Snímek příkazu Poznámky
Odebrat pouze cache*/ adresáře v projektu find . -type d -name 'cache*' -prune -exec rm -rf {} + -prune přeskakuje scházení do odpovídajících položek; rychlejší na obrovských stromech.
Odstranit adresáře podle hloubky find ./dist -mindepth 1 -maxdepth 1 -type d -exec rm -rf {} + Zaměřuje se pouze na přímé potomky v dist/.
Smazat pouze prázdné adresáře najdi . -type d -empty -delete Ideální čistka po nasazení.
Smazat soubory odpovídající vzoru find logs -type f -name '*.gz' -delete Zachovává nové logy bez doteku.
Smazat všechno, ale zachovat nadřazený adresář find /data/tmp -mindepth 1 -delete Služby nadále používají nadřazený adresář.

Použijte -print pro tréninkový průchod, pak jej odstraňte pro skutečný běh. Toto je praktická stránka mazání adresářů na Linux - přesný rozsah s rychlým spuštěním. Gotcha, na některých minimálních BusyBox verzích -delete chybí akce; použijte -exec rm -rf {} + místo toho.

Tyto vzory vás dovedou daleko. Přidejte pár zábrany, abyste se vyhnuli vzácné, ale drahé chybě.

Bezpečnostní prvky, které tě chrání před sebou samým

An ultrareal lockout/tagout padlock + hasp assembly as the lone hero, brushed steel and scuffed red enamel, bead of condensation on the shackle; a fiber safety tag hangs from the hasp with three bold engravings: RM -I, ONE FS, PRESERVE ROOT.

Mocné příkazy si zaslouží opatrné výchozí hodnoty. Vypěstujte si tyto návyky, aby smazání adresáře v Linux prostřednictvím příkazů nezničilo také vaši rozumnost.

  • Preferujte jeden příkaz s rm -I -r DIR zatímco ověřujete cestu na obrazovce.
  • Vždy citujte cesty: rm -rf — "$DIR" chrání proti mezerám, zástupným znakům a názvům začínajícím pomlčkou.
  • Potvrďte přesný cíl: ls -ld — "$DIR" zobrazí jeden řádek s oprávněními, vlastníkem a cestou.
  • Zůstávejte v rámci jednoho systému souborů: rm -rf –one-file-system "$DIR" zabraňuje přechodu do připojených svazků.
  • Ochrana root zůstane zapnutá, ponechejte –preserve-root na místě.
  • Vymažte bit neměnnosti, pokud je potřeba: lsattr -d "$DIR" ke kontrole, chattr -i "$DIR" k jejímu odstranění.

Pokud mazání stále selhává nebo se zasekne, projdi obvyklé podezřelé.

Spusť své cleanup testy na Cloudzy Linux VPS a pokračuj v budování

Ultrareal 1U rack server sits firmly on a cloud (cloud = VPS). A short SFP+ fiber patch links the server to an open laptop at 3/4 angle. On the laptop’s glassy terminal, two big stacked engravings: RM -I -R and ROLLBACK (toggle dot lit). On the rack face, small badges: NVME, 10 GBPS, DDR5.

Pokud chcete stabilní vzdálený server k vyzkoušení rm, rmdir a najít bezpečně, spustit Hostování Linux VPS a pracujte v čistém shellu. Je to levné, rychlé a dostupné v 13 regionů s 11 distribucí Linuxu připraveno k použití. Získáváte root přístup, úložiště NVMe SSD úložiště, a DDR5 RAM u moderních plánů plus DDoS ochrana a 99,95% dostupnost závazek. Vysoká šířka pásma a nízká latence jsou součástí balíčku s rychlostmi až 10 Gbps uvedené na kartách plánů.

  • Globální dostupnost: nasaďte se ve více než 12 lokalitách, včetně New Yorku, Los Angeles, Miami, Amsterdamu, Londýna, Německa, Švýcarska, Utahu, Dallasu, Las Vegas a Singapuru, pro rychlejší cesty k vašim uživatelům.
  • Root přístup + 11 distribucí: vyberte Linux kterou chcete a od prvního dne máte plnou kontrolu.
  • Moderní hardware: NVMe SSD úložiště a DDR5 RAM výkon pohánějí instance; výkon zůstává stabilní při vysoké zátěži I/O.
  • Síť + dostupnost: nízká latence, vysoká šířka pásma a cíl dostupnosti 99,95 % zajišťují včasné spuštění naplánovaných úloh.
  • Zabezpečení: ochrana DDoS je zahrnuta na všech serverech, takže běžná údržba se snáze obejde bez přerušení.
  • Pohodlí: předinstalované možnosti OS, zdarma IPv6 a různé způsoby platby usnadňují nastavení.

Preferujete plnou plochu? Během platby zvolte Linux RDP aplikaci s jedním kliknutím. Dodává Linux VPS s XRDP, GDM3I notice you've provided just ", and the" which appears to be a fragment rather than a complete UI label. Could you please provide the full text you'd like translated to Czech? For example: - "Add, and the settings" - "Save, and the changes" - etc. Once you share the complete phrase, I'll translate it immediately. GNOME GUI předinstalované na Ubuntu, takže se můžete připojit vzdáleně jedním kliknutím. Běží na stejných 12 místech a zachovává 99,95% dostupnost cíl. Existuje bez poplatku navíc pro předinstalovnou konfiguraci RDP.

Stručně řečeno: spusťte levný Linux VPS, vyberte si distribuci, ponechte root a v případě potřeby přidejte desktop Linux RDP při nákupu. Poté si interaktivně procvičujte odstraňování, vytváření snímků a opakujte, dokud vám sada příkazů nepadne přirozeně.

Řešení problémů: "Permission Denied", "Directory Not Empty", Zaneprázdněné cesty

A single ultrareal folder perched over a narrow chute (this chute symbolizes troubleshooting, so engrave it with a troubleshooting icon); inside it, smaller sub-folders and faint .dotfiles icons fade as they drop. Lip engravings top-to-bottom on the chute: SYMPTOM, CHECK, FIX; opposite side: NOT EMPTY, LOOK, FIND -DELETE.

Největší počet selhání spadá do pár vzorů. Použijte tento postup příznak → zkontroluj → oprav, aby smazání adresáře v Linux nezpomalilo váš deploy.

1) "Přístup odmítnut" u adresáře, který vlastníte
Zkontrolujte atributy pomocí lsattr -d DIR. Pokud je příznak neměnnosti i nastaven, odeberte jej pomocí sudo chattr -i DIR, poté zkuste znovu. Objevuje se na zesílených systémech a některých kontejnerech.

2) "Operace není povolena" i s sudo
Potvrďte, že připojení není jen pro čtení. mount | grep DIR or findmnt DIR vám zobrazí stav. Znovu připojte v režimu pro čtení a zápis pro operaci nebo zacilte jinou cestu.

3) "Adresář není prázdný" po rmdir
Položky jsou stále přítomny. Přepněte na:

find DIR -mindepth 1 -delete

Zahrnuje skryté soubory a vnořený obsah.

4) Služba znovu vytvoří složku
Běžící proces zapisuje do cesty. Zastavte nebo restartujte čistě, pak smažte. Pokud je samotné prostředí poškozené, příručka na systemctl příkaz nenalezen vám s tím pomůže. Konkrétní příklad: měli jsme Nginx zapisující do /var/log/nginx/ na přípravovacím serveru; po zastavení nginx.service vymazáno lsofse smazání podařilo a logy se spustily čistě.

5) "Zařízení nebo prostředek je zaneprázdněn"
Proces drží otevřený soubor v dané složce. lsof +D ADRESÁŘ or fuser -vm ADRESÁŘ ukazuje, co je aktivní; zastavte to čistě, pak odstraňte. Chcete-li si rychle zobrazit sockety před vyčištěním logů, podívejte se na Příkaz Linux Netstat která pokrývá rychlou kontrolu.

6) Divná jména: mezery, nové řádky nebo vedoucí pomlčka
Použijte or ./ před jmény začínajícími pomlčkou a uvádějte každý řetězec do uvozovek. Pro hromadné čištění podivných jmen spusťte find . -print0 | xargs -0 aby mezery nikdy nepřerušily příkaz.

S těmito opravami jsou převážně všechny překážky pryč. Pokud trvalé smazání není váš plán, použijte místo toho koš.

Koš místo smazání: trash-cli a odpadkový koš

Ultrareal blue desktop recycling bin (matte polymer with tiny injection marks, slot opening), a folded paper folder edge peeking at the slot. Etched along the lip: TRASH-CLI, TRASH. A small side badge glows RESTORE to suggest reversal.

Nemusíte všechno trvale mazat. Desktopová prostředí a servery s podporou GLib nabízejí koš, takže si můžete věci projít a obnovit je. Pokud se učíte, jak smazat složku v Linux a chcete si usnadnit prvních kroků, zkuste toto:

  • gio koš PATH přesune soubory a složky do koše; gio list trash:// vám umožní je procházet.
  • S trash-cli, použijte koš PATH, trash-list, trash-restore a trash-empty pro jednoduchý pracovní postup z příkazového řádku.

Je pomalejší než rm, přesto kontrola bezpečnosti má smysl, pokud chcete dodatečný krok ke schválení. Takže pokud potřebujete vědět, jak smazat adresář v Linux bez rizika pro skutečná data, začněte s trash a pak si vezměte rm.

Závěrečné myšlenky

Nyní máte v Linux úplnou sadu nástrojů pro mazání adresářů, včetně rmdir pro prázdné cesty, rm -I -r pro bezpečnou rekurzi, rm -rf pouze po ověření cíle a find -mindepth 1 -delete když potřebujete vymazat obsah bez odebrání nadřazeného prvku. Uvádějte cesty do uvozovek, ponechejte –preserve-root, zůstanete na jednom filesystému a odstraníte bit immutable, pokud vám brání; zbytek zvládnou kontroly pro řešení problémů.

A nezapomeňte – pokud potřebujete čistý vzdálený server k praxi, spusťte Cloudzy Linux VPS server; je cenově dostupný a spolehlivý pro bezpečné testování, a s naším jedním kliknutím Linux RDP Navíc dostanete desktopovou relaci, abyste mohl procházet smazáním v plném GUI.

 

Často kladené otázky

Jaký je rozdíl mezi rm a rmdir?

rmdir odstraňuje pouze prázdné adresáře a s volbou -p může odstranit i nadřazené adresáře, které se stanou prázdné. rm odstraňuje soubory a adresáře; přidejte -r pro rekurzi a -I nebo -i pro potvrzení.

Jak mohu odstranit složku a veškerý její obsah najednou?

Použij rm -rf — DIR poté, co ověříš cestu. Přidej -v, chceš-li protokol řádek po řádku. Někteří správci si nejdřív vyzkoušejí suchý průchod s rm -I -r před finálním spuštěním.

Jak smažu obsah adresáře, ale ne samotný adresář?

Spusťte find DIR -mindepth 1 -delete. Tento příkaz vyprázdní adresář v Linuxu a zachová nadřazený adresář pro služby.

Proč rmdir říká „Directory not empty“, když nevidím žádné soubory?

Skryté soubory jsou stále přítomné. Příkaz ls -A je zobrazí, pak použijte vzor find -mindepth 1 -delete.

Jak opravím „Operation not permitted“ nebo „Permission denied“?

Zkontrolujte immutable bit příkazem lsattr -d DIR a odstraňte jej pomocí sudo chattr -i DIR, pokud je přítomen. Ověřte také, že připojení není pouze pro čtení. Pokud služba během čištění znovu vytváří cesty, nejdřív vyřešte problém s jednotkou; systemctl část v odkazu výše vám pomůže.

Share

Další z blogu

Pokračuj ve čtení.

Hotov k nasazení? Od 2,48 $/měs.

Nezávislý cloud od roku 2008. AMD EPYC, NVMe, 40 Gbps. Vrácení peněz do 14 dnů.