Android

Hogyan lehet eltávolítani (törölni) a könyvtárat a linuxban

Hogyan töröld a Windows old mappát ?

Hogyan töröld a Windows old mappát ?

Tartalomjegyzék:

Anonim

A Linux rendszerekben a könyvtárak eltávolításának különféle módjai vannak. Ha olyan Asztali fájlkezelőt használ, mint például a Gnome Files vagy a KDE Dolphin, akkor a kezelõ grafikus felhasználói felületével törölheti a fájlokat és könyvtárakat. Ha fejtelen kiszolgálón dolgozik, vagy egyszerre több könyvtárat szeretne eltávolítani, akkor a legjobb megoldás a könyvtárak (mappák) törlése a parancssorból.

, elmagyarázzuk, hogyan lehet az Linux könyvtárakat törölni az rmdir , az rm és a parancsok find .

Mielőtt elkezded

Ha eltávolít egy könyvtárat az Asztal fájlkezelővel, a könyvtár valójában a Kukába kerül és könnyen helyreállítható.

Különös óvatossággal kell eltávolítania a fájlokat vagy könyvtárakat a parancssorból, mert ha a könyvtárat a magyarázott parancsokkal törli, azt nem lehet teljes mértékben helyreállítani.

A legtöbb Linux fájlrendszeren egy könyvtár törléséhez írási engedély szükséges a könyvtárhoz és annak tartalmához. Ellenkező esetben „A művelet nem engedélyezett” hibaüzenet jelenik meg.

A szóközt tartalmazó könyvtárneveket visszajelzéssel ( / ) kell kitölteni.

Könyvtárak eltávolítása az rmdir

rmdir egy parancssori segédprogram az üres könyvtárak törléséhez. Hasznos, ha csak egy üres könyvtárat akar törölni, anélkül, hogy ellenőriznie kellene, hogy a könyvtár üres-e vagy sem.

Az rmdir könyvtár törléséhez írja be a parancsot, majd az eltávolítani kívánt könyvtár nevét. Például egy dir1 nevű dir1 törléséhez írja be:

rmdir dir1

Ha a könyvtár nem üres, akkor a következő hibát kapja:

rmdir: failed to remove 'dir1': No such file or directory

Ebben az esetben az rm parancsot kell használnia, vagy manuálisan el kell távolítania a könyvtár tartalmát, mielőtt törölheti.

Könyvtárak eltávolítása rm sel

rm egy parancssori segédprogram a fájlok és könyvtárak törléséhez. Az rmdir ellentétben az rm parancs mind üres, mind nem üres könyvtárakat törölhet.

Alapértelmezés szerint, ha opció nélkül használják, az rm nem távolítja el a könyvtárakat. Egy üres könyvtár törléséhez használja a -d ( --dir ) opciót, és egy nem üres könyvtár és annak összes tartalmának törléséhez használja az -r ( --recursive vagy -R ) opciót.

Például, ha törölni szeretne egy dir1 nevű dir1 , annak tartalmával együtt:

rm -r dir1

Ha egy könyvtár vagy a könyvtáron belüli fájl írásvédett, akkor a rendszer kéri, hogy erősítse meg a törlést. A könyvtár eltávolítása nélkül, a rendszer kéri, használja a -f opciót:

rm -rf dir1

Több könyvtár egyszerre történő eltávolításához használja az rm parancsot, majd a szóközzel elválasztott könyvtárak nevét. Az alábbi parancs eltávolítja az összes felsorolt ​​könyvtárat és azok tartalmát:

rm -r dir1 dir2 dir3

A -i opció azt mondja az rm hogy kérje meg az egyes alkönyvtárak és fájlok törlésének megerősítését. Ha a könyvtár sok fájlt tartalmaz, ez kicsit bosszantó lehet, ezért -I meg az -I opció használatát, amely csak egyszer szólít fel a törlés megkezdése előtt.

rm -rI dir1

Az y könyvtárat eltávolításához nyomja Enter .

rm: remove 1 argument recursively? y

Rendszeres bővítéseket is használhat több könyvtár összeillesztésére és törlésére. Például az összes első szintű könyvtár eltávolításához az aktuális könyvtárból, amelynek végződése a _bak , a következő parancsot használja:

rm -r *_bak

Rendszeres kiterjesztések használata a könyvtárak eltávolításakor kockázatos lehet. Ajánlatos először felsorolni a könyvtárakat az ls paranccsal, hogy az rm parancs futtatása előtt láthassa, mely könyvtárak törlődnek.

Könyvtárak eltávolítása a find

find egy parancssori segédprogram, amely lehetővé teszi a fájlok és könyvtárak keresését egy adott kifejezés alapján, és végrehajthat egy műveletet minden egyező fájlra vagy könyvtárra.

A leggyakoribb forgatókönyv a find parancs használata a könyvtárak mintának megfelelő törlésére. Például az összes _cache könyvtár törléséhez, amely az aktuális munkakönyvtárban található _cache :

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

Elemezzük a fenti parancsot:

  • /dir - rekurzív keresés az aktuális munkakönyvtárban ( . ). -type d - a keresést könyvtárakra korlátozza. -name '*_cache' - csak olyan könyvtárakban keres, amelyek végén _cache -exec - végrehajt egy külső parancsot opcionális argumentumokkal, ebben az esetben az rm -r . {} + - a talált fájlokat az rm parancs végéhez csatolja.

Az összes üres könyvtár eltávolítása

Az összes üres könyvtárat eltávolíthatja egy könyvtári fából:

find /dir -type d -empty -delete

Itt található a használt lehetőségek magyarázata:

  • /dir - rekurzív keresés a /dir könyvtárban. -type d - a keresést könyvtárakra korlátozza. -empty - a keresést csak az üres könyvtárakra korlátozza. -delete - törli az alkönyvtárban található összes üres könyvtárat. -delete csak az üres könyvtárakat törölheti.

Használja a -delete opciót nagyon óvatosan. A find parancssort kifejezésként értékelik, és ha előbb hozzáadja a -delete opciót, akkor a parancs mindent töröl a megadott kiindulási pontok alatt. Mindig használja a -delete opciót, és törlés előtt tesztelje a parancsot először a -delete opció nélkül.

/ bin / rm: Az érvelési lista túl hosszú

Ez a hibaüzenet akkor jelenik meg, ha az rm paranccsal eltávolít egy hatalmas számú fájlt tartalmazó könyvtárat. Ennek oka az, hogy a fájlok száma meghaladja a parancssori argumentum rendszerkorlátját.

Ennek a problémának többféle megoldása van. Például cd a könyvtárba, és manuálisan, vagy hurok segítségével eltávolíthatja az alkönyvtárakat egyenként.

A legegyszerűbb megoldás az, ha előbb törli az összes fájlt a könyvtárból a find paranccsal, majd törli a könyvtárat:

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

Következtetés

Az rm és a find segítségével gyorsan és hatékonyan törölheti a könyvtárakat különböző kritériumok alapján.

A könyvtárak törlése egyszerű és könnyű folyamat, de óvatosnak kell lennie, hogy ne törölje a fontos adatokat.

rm rmdir terminál