Come eliminare da shell una cartella non vuota in Ubuntu

In questo scenario, dopo aver lanciato il comando “rmdir folder_name”, ci troviamo in risposta questo errore:

rmdir: failed to remove ‘folder_name’: Directory not empty

Il messaggio è piuttosto autoesplicativo, infatti la cartella non può essere eliminata in quanto contiene dei file e per ovvie ragioni ne viene impedita la cancellazione.

Eliminare una cartella non vuota con Bash

Forzare la cancellazione di una cartella non vuota presuppone il fatto che siamo consapevoli di ciò che stiamo facendo, infatti i file in essa contenuti verranno a loro volta eliminati.

Detto ciò, qui di seguito la soluzione.

				
					rm -r folder_name
				
			

Se i privilegi dell’utente con cui stiamo operando ce lo permettono a questo punto la cartella ed i file in essa contenuti saranno stati eliminati. In caso contrario basta lanciare il comando con privilegi di root anteponendo sudo.

				
					sudo rm -r folder_name
				
			

I comandi sopra illustrati presuppongono il fatto che ci troviamo allo stesso livello della cartella che vogliamo cancellare. Se così non fosse, è sufficiente anteporre il percorso completo.

				
					sudo rm -r /path/to/folder_name
				
			

Aggiungiamo un po' di sicurezza

Come menzionato sopra, eliminare una cartella non vuota è un’operazione rischiosa che potrebbe portarci ad eliminare inavvertitamente dei file che non vorremmo realmente cancellare.

È pertanto consigliabile introdurre un po’ più di sicurezza nel comando attraverso il parametro -i che rende interattiva la cancellazione chiedendo per ogni file la conferma di volerlo realmente cancellare.

				
					sudo rm -r -i folder_name
				
			

Conclusione

In questo articolo viene illustrato come forzare l’eliminazione di una cartella ed i file in essa contenuti usando la shell di Ubuntu.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Most Recent

Come ridurre la dimensione di un boltdb

Questo post parte da questa risposta ad una domanda posta sul repository ufficiale di boltdb. Nella domanda si chiede come ridurre la dimensione di un database

Come installare uno script Go su Ubuntu

Go è un linguaggio di programmazione nato in Google dalle mani di Robert Griesemer, Rob Pike e Ken Thompson. Sintatticamente è molto simile al C

Come trasferire chiamate tra interni su FreePBX

Molti telefoni hardware hanno già incorporato un pulsante che può essere utilizzato per il trasferimento delle chiamate tra interni, altri invece ne sono sprovvisti. Cosa