Com esborrar un directori complet que inclou fitxers a Linux

La línia d'ordres de Linux és una eina potent que us permet fer moltes coses més ràpid i més fàcil que a través de la GUI. Una de les seves capacitats essencials és crear i suprimir fitxers i carpetes, tot i que en aquest article ens limitarem a suprimir carpetes.

Com esborrar un directori complet que inclou fitxers a Linux

Continueu llegint per aprendre a utilitzar les ordres "rm" i "rmdir" per desfer-vos de carpetes, subcarpetes i fitxers que ja no necessiteu.

Utilitzeu "rm" per suprimir directoris

Hi ha moltes ordres que podeu utilitzar per eliminar un directori. L'elecció ha de dependre del que voleu fer i de com voleu que es faci. La línia d'ordres de Linux és molt flexible en aquest sentit, potser fins i tot més que els seus homòlegs de Windows i Mac.

Val la pena assenyalar que Linux no fa una distinció entre carpetes i fitxers com ho fan els sistemes operatius Mac i Windows. En canvi, tracta les carpetes com a grups de fitxers. En aquesta secció, examinarem l'ordre rm. Comencem.

Utilitzeu "rm" per suprimir directoris

rm –d nomdeldirectori

L'ordre anterior només us permetrà suprimir un únic directori buit. Aquesta és la comanda més bàsica per eliminar/suprimir carpetes.

rm –d nomdeldirectori1 nomdeldirectori2

L'ordre presentada anteriorment suprimirà diverses carpetes. El problema aquí és, com amb l'anterior, tots han d'estar buits. Si passa que la primera carpeta que heu nomenat no està buida, la línia d'ordres no intentarà suprimir altres carpetes. Simplement s'aturarà, sense donar-te cap missatge d'error.

rm –r nomdeldirectori1 nomdeldirectori2

L'ordre anterior suprimirà totes les carpetes especificades, les seves subcarpetes i els fitxers que hi ha. Això és possible gràcies a l'opció "-r" que substitueix el "-d" de l'ordre anterior. A la línia d'ordres de Linux, "-r" significa recursiu. Es pot utilitzar sol i combinar-se amb altres opcions.

rm –rf nomdeldirectori

Quan executeu una ordre "rm -r", la línia d'ordres de Linux us demanarà permís per suprimir qualsevol subcarpetes i fitxers que estiguin protegits contra escriptura. Tanmateix, si escriviu "rm –rf", no se us demanarà. La lletra "f" significa "força".

Hauríeu d'anar amb compte quan suprimiu carpetes i fitxers amb una ordre "rm –rf", ja que podeu perdre dades importants o danyar el sistema operatiu. Els fitxers i les carpetes del sistema es poden suprimir més fàcilment en un sistema Linux que en Windows o Mac.

sudo apt-get install tree

Per entendre millor el que esteu a punt d'eliminar, hauríeu d'instal·lar el paquet d'arbre mitjançant la utilitat apt-get. Això funciona per a Ubuntu i la resta de la família Debian. Si esteu en una altra distribució, utilitzeu la seva pròpia eina de gestió de paquets. Quan executeu l'ordre anterior, la línia d'ordres mostrarà la carpeta i l'estructura de fitxers de la carpeta on us trobeu. D'aquesta manera, podeu comprovar fàcilment si hi ha fitxers o subcarpetes que han de romandre intactes.

camí de l'arbre/al/teu/directori

L'ordre presentada anteriorment us permetrà veure l'estructura d'una altra carpeta al vostre sistema Linux.

Ordres avançades

Hi ha altres variacions de l'ordre “rm”, com ara “–no-preserve-root”, “–preserve-root”, “–one-file-system” i altres. Tanmateix, estan pensats per a usuaris experimentats de la línia d'ordres. Si cometeu un error amb un d'ells, podeu suprimir una part o fins i tot tots els fitxers del sistema del vostre ordinador. A causa de la seva naturalesa complicada, els guardarem per a un altre tutorial de línia d'ordres.

Utilitzeu rmdir per suprimir directoris

També podeu utilitzar el conjunt d'ordres rmdir per eliminar carpetes. Tanmateix, les ordres rmdir només es poden fer càrrec de les carpetes buides i no poden suprimir els fitxers continguts dins de les carpetes marcades per a supressió. Hi ha diverses ordres rmdir útils i les farem una ullada en aquesta secció.

Utilitzeu rmdir per suprimir directoris

Tanmateix, podeu enganyar la línia d'ordres per suprimir una carpeta no buida amb l'opció principal, encara que més sobre això una mica més endavant.

rmdir nomdeldirectori

Aquesta és la comanda "rmdir" més bàsica que hi ha. Se suprimirà un directori buit que es troba dins del directori a la vostra ubicació actual. Per exemple, si la vostra ubicació actual és l'escriptori i teniu una "Carpeta nova" buida, aquesta ordre "rmdir" s'encarregarà d'això.

rmdir nomdeldirectori1 nomdeldirectori2

En cas que tingueu diverses carpetes que voleu suprimir, podeu utilitzar la variació anterior de l'ordre "rmdir". S'eliminaran totes les carpetes (directoris) especificades, però s'han d'incloure dins del directori on esteu actualment. Per suprimir directoris en altres llocs, consulteu l'ordre següent.

rmdir /camí/al/vostre/directori

La línia d'ordres de Linux us permet suprimir qualsevol directori de la vostra ubicació actual, sigui on sigui. Per fer-ho, haureu d'introduir el camí complet cap al directori o directoris dels quals voleu desfer-vos.

En cas que hàgiu intentat suprimir una carpeta que conté subcarpetes i/o fitxers, la línia d'ordres us mostrarà un missatge d'error que indica: El directori no està buit. No cal dir que no esborrarà la carpeta especificada.

En cas que hàgiu especificat tres carpetes i la primera no estigui buida, la línia d'ordres deixarà de processar la vostra ordre tan bon punt s'executi a la primera carpeta. Obtindreu el mateix missatge d'error que en el cas anterior i la línia d'ordres no intentarà suprimir altres carpetes de la llista.

Podeu solucionar-ho afegint l'opció següent: –ignore-fail-on-non-empty. Això obligarà la línia d'ordres a continuar executant l'ordre encara que trobi carpetes no buides. L'ordre podria semblar a això: rmdir –ignore-fail-in-non-empty NewFolder1 NewFolder2 NewFolder3.

rmdir –p nomdeldirectori1 nomdeldirectori2

L'ordre anterior us pot ajudar a enganyar Linux perquè suprimeixi una carpeta no buida. Utilitza l'opció "-p", també coneguda com a opció "parent". Així és com funciona.

Suposem que teniu una carpeta anomenada Pics i una carpeta anomenada ColorPics dins. Suposem que aquest últim està buit i és l'únic element de la carpeta Fotos. Quan executeu l'ordre "rmdir -p ColorPics Pics", la línia d'ordres suprimirà la carpeta ColorPics perquè no hi ha res. Després d'això, comprovarà l'estat de la carpeta Fotos, determinarà que també està buida i la suprimirà.

Coneix el poder de la línia de comandaments

La línia d'ordres us permet fer moltes coses en un sistema Linux. Aneu amb compte si no teniu molta experiència, ja que és més fàcil fer malbé el sistema a Linux que a Windows i Mac.

Heu utilitzat la línia d'ordres per suprimir carpetes i fitxers abans? Quines ordres vas utilitzar? Si creieu que ens hem perdut algunes bones opcions, feu-nos-ho saber a la secció de comentaris a continuació.