Come Eliminare i File e le Directory con il Terminale di Linux

0
2946
Fatmawati Achmad Zaenuri/Shutterstock.com

Rm, rmdir comandi cancellazione di file e directory su Linux, macOS, e altri sistemi operativi Unix-like. Sono simili ai del e deltree comandi in Windows e DOS. Questi comandi sono molto potenti e hanno un bel paio di opzioni.

È importante notare che i file e le cartelle eliminati utilizzando rm, rmdir non vengono spostati nel Cestino. Essi vengono immediatamente rimossi dal computer. Se si elimina accidentalmente i file utilizzando questi comandi, l’unico modo sarete in grado di ripristinare da un backup.

Come Rimuovere i File con rm

Il caso più semplice è l’eliminazione di un singolo file nella directory corrente. Digitare il comando rm, uno spazio e poi il nome del file che si desidera eliminare.

rm file_1.txt

Se il file non si trova nella directory di lavoro corrente, prevedono un percorso per il file.

rm ./path/to/the/file/file_1.txt

Si può passare più di un nome di file rm. Così facendo elimina tutti i file specificati.

rm file_2.txt file_3.txt

I caratteri jolly possono essere utilizzati per selezionare gruppi di file da eliminare. * Rappresenta più personaggi e l’ ? rappresenta un singolo carattere. Questo comando potrebbe eliminare tutti i file di immagine png nella directory di lavoro corrente.

rm *.png

Questo comando cancella tutti i file che hanno un singolo carattere di estensione. Ad esempio, questo sarebbe cancellare il File.1 e File.2, ma non di File.12.

rm *.?

Se un file è protetto da scrittura vi verrà richiesto prima che il file viene eliminato. Si deve rispondere con y o n e premere “Invio”.

Per ridurre il rischio di utilizzo di rm con caratteri jolly utilizzare l’opzione-i (interattivo). Questo richiede di confermare l’eliminazione del file.

rm-i *.dat

L’-f (forza) opzione è l’opposto di interattivo. Esso non richiede una conferma, anche se i file sono protetti da scrittura.

rm -f nomefile

Come Rimuovere le Directory con rm

Per rimuovere una directory vuota, utilizzare l’opzione-d (directory). È possibile utilizzare i caratteri jolly (* e ?) i nomi delle directory, così come è possibile con i nomi di file.

rm -d directory

Fornisce più di un nome di directory, elimina tutti specificata una directory vuota.

rm -d directory1 cartella2 /path/to/directory3

Per eliminare le directory non vuota, utilizzare l’opzione-r (ricorsiva). Per essere chiari, questo rimuove le directory e tutti i file e le sottodirectory contenute al loro interno.

rm -r directory1 cartella2 directory3

Se una directory o di un file è protetto da scrittura, verrà richiesto di confermare l’eliminazione. Eliminare le directory che non sono vuote e per sopprimere queste richieste, utilizzare l’opzione-r (ricorsiva) e -f (forza) opzioni insieme.

rm -rf directory

La cura è necessaria. Fare un errore con il comando rm-rf potrebbe causare la perdita di dati o malfunzionamenti del sistema. E ‘ pericoloso, e la prudenza è la miglior politica. Per comprendere la struttura di directory e file che verranno eliminati dal comando rm-rf, utilizzare il comando albero.

L’uso di apt-get per installare questo pacchetto sul vostro sistema se si sta utilizzando Ubuntu o un’altra distribuzione basata su Debian. Su altre distribuzioni Linux, usare la vostra distribuzione di Linux strumento di gestione dei pacchetti, invece.

sudo apt-get install albero

Esegue il comando albero produce un semplice per capire diagramma della struttura di directory e file sotto la directory da cui viene eseguito.

albero

È inoltre possibile fornire un percorso per l’albero di comando a causa di esso per avviare l’albero da un’altra directory del file system.

albero path/to/directory

Il comando rm ha anche –one-file-system, –no-conservare-root, –preserve-root opzioni, ma quelli sono solo suggerimenti per gli utenti avanzati. Se si ottiene qualcosa di sbagliato, si potrebbe accidentalmente eliminare tutti i file di sistema. Consultare la pagina di manuale del comando per ulteriori informazioni.

Come Rimuovere le Directory con rmdir

C’è un altro comando, chiamato rmdir, che è possibile utilizzare per eliminare le directory. La differenza tra rm e rmdir è che rmdir si possono solo eliminare le directory vuote. Non potrà mai cancellare il file.

Il caso più semplice è l’eliminazione di una singola directory vuota. Come con rm, si può passare più i nomi delle directory rmdir , o il percorso di una directory.

Eliminare una directory nella directory corrente passando il suo nome a rmdir :

rmdir directory

Eliminare più directory passando una lista di nomi rmdir :

rmdir directory1 cartella2 directory3

Eliminare una directory non presente nella directory corrente, specificando il percorso completo della directory:

rmdir /path/to/directory

Se si tenta di eliminare una cartella che non è vuoto, rmdir vi darà un messaggio di errore. Nell’esempio riportato di seguito rmdir con successo, e in silenzio, elimina la directory del cliente, ma si rifiuta di eliminare la directory progetti, perché esso contiene i file. I progetti directory è rimasto esattamente com’era e i file in esso sono intatte.

Quando rmdir una Directory non vuota di errore”, si interrompe l’elaborazione della directory che sono stati passati sulla riga di comando. Se avete chiesto di eliminare quattro le directory e il primo aveva i file in esso, rmdir vuoi dare il messaggio di errore e non fare nulla di più. Si può forzare per ignorare questi errori con l’ –ignore-mancare-sul-camere non-vuoto, in modo che altre directory sono trattati.

Nell’esempio riportato di seguito due cartelle sono stati passati a rmdir, questi sono di lavoro e rapporti di lavoro e/o quotazioni . –Ignore-mancare-sul-camere non-vuoto opzione è stata inserita nel comando. Lavoro/rapporti di cartella di file, in modo rmdir non è possibile eliminare. –Ignore-mancare-sul-camere non-vuoto opzione forze rmdir per ignorare l’errore e passare alla cartella successiva ha bisogno di processo, che è quella del lavoro e/o quotazioni. Questa è una cartella vuota, e rmdir lo elimina.

Questo è il comando utilizzato.

rmdir –ignore-mancare-sul-camere non-vuota lavoro/relazioni /lavori/virgolette

È possibile utilizzare l’opzione-p (i genitori) opzione per eliminare una directory e di eliminare la directory padre. Questo trucco funziona perché rmdir inizia con la directory di destinazione e quindi di back-procedura per il genitore. Tale directory deve ora essere vuoto, in modo da può essere eliminato dal rmdir, e il processo si ripete un passo indietro per il percorso che è stato fornito rmdir.

Nel seguente esempio, il comando è passato a rmdir:

rmdir -p lavoro/fatture

Entrambe le fatture e le directory di lavoro sono cancellati, come richiesto.

Se stai usando Bash o qualsiasi altra shell, Linux fornisce flessibili e potenti comandi per eliminare le directory e i file direttamente dal terminale a riga di comando. Alcune persone preferiscono avere un flusso di lavoro che ruota intorno al terminale. Altri possono avere alcuna possibilità di scelta in materia. Essi possono essere al lavoro su server senza interfaccia grafica installata una sessione remota su un sistema senza testa come un Raspberry Pi. Questi comandi sono perfetti per quel gruppo di persone.

Ma qualunque sia il tipo di flusso di lavoro che si preferisce, questi comandi si prestano molto bene ad essere incluso negli script di shell. Se uno script è innescato da un cron job, si può automatizzare le operazioni di routine di compiti di pulizia come spurgo indesiderati, file di log. Se si analizza che caso d’uso, a ricordare la potenza di questi comandi, prova tutto con attenzione, e di mantenere sempre una copia di backup recente.