Come eliminare una directory completa inclusi i file in Linux

Linux Command Line è un potente strumento che ti consente di fare molte cose più velocemente e più facilmente rispetto alla GUI. Una delle sue capacità essenziali è creare ed eliminare file e cartelle, anche se in questo articolo ci limiteremo a eliminare le cartelle.

Come eliminare una directory completa inclusi i file in Linux

Continua a leggere per imparare a usare i comandi "rm" e "rmdir" per sbarazzarti di cartelle, sottocartelle e file che non ti servono più.

Usa "rm" per eliminare le directory

Ci sono molti comandi che puoi usare per eliminare una directory. La scelta dovrebbe dipendere da cosa vuoi fare e come vuoi che sia fatto. Linux Command Line è super flessibile in questo senso, forse anche più delle sue controparti Windows e Mac.

Vale la pena notare che Linux non fa distinzione tra cartelle e file come fanno i sistemi operativi Mac e Windows. Invece, tratta le cartelle come gruppi di file. In questa sezione esamineremo il comando rm. Iniziamo.

Usa "rm" per eliminare le directory

rm –d nomedelladirectory

Il comando sopra ti consentirà di eliminare solo una singola directory vuota. Questo è il comando più semplice per rimuovere/eliminare le cartelle.

rm –d nomedelladirectory1 nomedelladirectory2

Il comando presentato sopra eliminerà più cartelle. Il problema qui è che, come con il precedente, devono essere tutti vuoti. Se succede che la prima cartella che hai nominato non è vuota, Command Line non tenterà di eliminare altre cartelle. Si fermerà semplicemente, senza darti un messaggio di errore.

rm –r nomedelladirectory1 nomedelladirectory2

Il comando sopra eliminerà tutte le cartelle specificate, le loro sottocartelle e i file in esse contenuti. Ciò è possibile grazie all'opzione “-r” che sostituisce la “-d” del comando precedente. Nella riga di comando di Linux, "-r" sta per ricorsivo. Può essere utilizzato da solo e combinato con altre opzioni.

rm –rf nomedelladirectory

Quando esegui un comando "rm -r", la riga di comando di Linux ti chiederà l'autorizzazione per eliminare eventuali sottocartelle e file protetti da scrittura. Tuttavia, se si digita invece "rm -rf", non verrà richiesto. La lettera "f" sta per "forza".

Prestare attenzione quando si eliminano cartelle e file con un comando "rm -rf", poiché si potrebbero perdere dati importanti o danneggiare il sistema operativo. I file e le cartelle di sistema possono essere eliminati più facilmente su un sistema Linux che su Windows o Mac.

sudo apt-get install tree

Per capire meglio cosa stai per eliminare, dovresti installare il pacchetto dell'albero tramite l'utilità apt-get. Funziona per Ubuntu e il resto della famiglia Debian. Se sei su un'altra distribuzione, usa il suo strumento di gestione dei pacchetti. Quando esegui il comando sopra, Command Line visualizzerà la cartella e la struttura dei file della cartella in cui ti trovi. In questo modo, puoi facilmente verificare se ci sono file o sottocartelle che dovrebbero rimanere intatti.

percorso dell'albero/alla/tua/directory

Il comando presentato sopra ti consentirà di visualizzare la struttura di un'altra cartella nel tuo sistema Linux.

Comandi avanzati

Esistono altre varianti del comando "rm", come "–no-preserve-root", "–preserve-root", "–one-file-system" e altri. Tuttavia, sono destinati agli utenti esperti della riga di comando. Se commetti un errore con uno di questi, potresti eliminare una parte o anche tutti i file di sistema sul tuo computer. A causa della loro natura complicata, li salveremo per un altro tutorial sulla riga di comando.

Usa rmdir per eliminare le directory

Puoi anche usare il set di comandi rmdir per eliminare le cartelle. Tuttavia, i comandi rmdir possono occuparsi solo delle cartelle vuote e non possono eliminare i file contenuti nelle cartelle contrassegnate per l'eliminazione. Ci sono diversi utili comandi rmdir e li esamineremo in questa sezione.

Usa rmdir per eliminare le directory

Tuttavia, puoi ingannare la riga di comando per eliminare una cartella non vuota con l'opzione padre, anche se ne parleremo più avanti.

rmdir nomedelladirectory

Questo è il comando "rmdir" più semplice in circolazione. Eliminerà una directory vuota che si trova all'interno della directory nella posizione corrente. Ad esempio, se la tua posizione attuale è desktop e hai una "Nuova cartella" vuota, questo comando "rmdir" se ne occuperà.

rmdir nomedelladirectory1 nomedelladirectory2

Nel caso tu abbia più cartelle che desideri eliminare, puoi utilizzare la variazione sopra del comando "rmdir". Tutte le cartelle specificate (directory) verranno eliminate, ma devono essere contenute nella directory in cui ti trovi attualmente. Per eliminare le directory altrove, fai riferimento al comando successivo.

rmdir /percorso/della/tua/directory

La riga di comando di Linux ti consente di eliminare qualsiasi directory dalla posizione corrente, ovunque si trovi. Per farlo, dovrai inserire il percorso completo verso la directory o le directory di cui vorresti sbarazzarti.

Nel caso in cui tu abbia tentato di eliminare una cartella che contiene sottocartelle e/o file, la riga di comando ti mostrerà un messaggio di errore che indica: Directory non vuota. Inutile dire che non eliminerà la cartella specificata.

Nel caso in cui hai specificato tre cartelle e la prima si è rivelata non vuota, Command Line interromperà l'elaborazione del comando non appena verrà eseguito nella prima cartella. Riceverai lo stesso messaggio di errore del caso precedente e la riga di comando non tenterà di eliminare altre cartelle nell'elenco.

Puoi rimediare aggiungendo la seguente opzione: –ignore-fail-on-non-empty. Ciò forzerà la riga di comando a continuare a eseguire il comando anche se incontra cartelle non vuote. Il comando potrebbe assomigliare a questo: rmdir –ignore-fail-in-non-empty NewFolder1 NewFolder2 NewFolder3.

rmdir –p nomedelladirectory1 nomedelladirectory2

Il comando precedente potrebbe aiutarti a indurre Linux a eliminare una cartella non vuota. Utilizza l'opzione "-p", nota anche come opzione "genitore". Ecco come funziona.

Supponiamo che tu abbia una cartella denominata Pics e una cartella denominata ColorPics al suo interno. Supponiamo che quest'ultimo sia vuoto e sia l'unico elemento all'interno della cartella Pics. Quando esegui il comando "rmdir –p ColorPics Pics", la riga di comando eliminerà la cartella ColorPics perché non contiene nulla. Successivamente, controllerà lo stato della cartella Pics, determinerà che anch'essa è vuota e la cancellerà.

Conosci il potere della riga di comando

Command Line ti permette di fare molte cose su un sistema Linux. Fai attenzione se non hai molta esperienza, poiché è più facile danneggiare il sistema su Linux che su Windows e Mac.

Hai usato la riga di comando per eliminare cartelle e file prima? Quali comandi hai usato? Se pensi che abbiamo perso alcune buone opzioni, faccelo sapere nella sezione commenti qui sotto.

messaggi recenti