LINUX: rm – rimuovere file e directory

()

rm: rimuovere file e directory

Il comando rm viene utilizzato per rimuovere (eliminare) file e directory, come mostrato qui:

rm item…

dove item è uno o più file o directory.

Tabella 4-8: Opzioni rm

Opzione                                                                                                                  Significato

-i,           –interactive           Prima di eliminare un file esistente, chiedere conferma all’utente.

Se questa opzione non viene specificata, rm eliminerà automaticamente i file.

-r,         – ricorsivo                  Elimina ricorsivamente le directory. Ciò significa che se si ha una directory e                                                     sono presenti delle sottodirectory, saranno cancellate anche loro.

Per eliminare la directory, è necessario specificare questa opzione.

-f,    –force        Ignora file non esistenti e disabilita ogni richiesta di conferma dall’inglese force, forzare                                 rm è spesso utilizzato con l’alias di “rm -i” per evitare cancellazioni accidentali;se in questo caso si volesse cancellare un gran numero di file senza la richiesta di conferma, si può annullare l’effetto dell’opzione -i specificando anche l’opzione -f.

-v,    –verbos  Visualizza messaggi informativi quando viene eseguita la cancellazione.

Fare attenzione con rm!

I sistemi operativi simili a Unix come Linux non hanno un comando di ripristino. Dopo aver eliminato qualcosa con rm, è sparito. Linux presume che tu sia intelligente e tu sappia cosa stai facendo.

Prestare particolare attenzione con i caratteri jolly. Considera questo esempio classico. Supponiamo che tu voglia eliminare solo i file HTML in una directory. Per fare ciò, digitare quanto segue:

rm *.html

Questo è corretto, ma se si posiziona accidentalmente uno spazio tra * e .html in questo modo:

rm * .html

il comando rm cancellerà tutti i file nella directory e quindi ci si accorgera’che non esiste alcun file chiamato .html.

Ecco un suggerimento utile: ogni volta che usi i caratteri jolly con rm (oltre a controllare attentamente la digitazione!), prova prima il carattere jolly con ls. Questo ti permetterà di vedere i file che verranno eliminati.

Quindi premere la freccia su per richiamare il comando e sostituire ls con rm.

Tabella 4-9: Esempi di rm

Comando                                                        Risultato

rm file1                                                        Elimina file1 silenziosamente

rm -i file1                                                    Come il comando precedente, tranne per il fatto che all’utente viene richiesta la conferma prima dell’esecuzione dell’eliminazione.

rm -r file1 dir1                                           Elimina file1 e dir1 e i suoi contenuti.

rm -rf file1 dir1                                          Come il comando precedente, tranne per il fatto che se file1 o dir1 non esistono, rm continuerà silenziosamente

RIASSUMENDO

rm [<opzioni>] <nome>…

Rimuove i file indicati come argomento. In mancanza dell’indicazione delle opzioni necessarie, non vengono rimosse le directory.

Alcune opzioni

-r | -R

Rimuove il contenuto delle directory in modo ricorsivo.

Esempi

$ rm prova

Elimina il file prova.

$ rm ./-r

Elimina il file -r che inizia il suo nome con un trattino, senza confondersi con l’opzione -r (ricorsione).

$ rm -r ~/varie

Elimina la directory varie che risiede nella directory home, insieme a tutte le sue eventuali sottodirectory.

Attenzione

# rm -r .*

Elimina tutti i file e le directory a partire dalla radice! In pratica elimina tutto.

Questo è un errore tipico di chi vuole cancellare tutte le directory nascoste (cioè quelle che iniziano con un punto) contenute nella directory corrente. Il disastro avviene perché nei sistemi Unix, .* rappresenta anche la directory corrente (.) e la directory precedente o genitrice (..).

How useful was this post?

Click on a star to rate it!

Average rating / 5. Vote count:

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?