Red Hat Linux 7.1: Official Red Hat Linux Getting Started Guide | ||
---|---|---|
Indietro | Capitolo 11. Gestione dei file e delle directory | Avanti |
Fino ad ora avete imparato qualcosa sulla struttura del filesystem e su come creare file e directory.
Ma il fatto che sappiate creare un file o una directory non significa che dobbiate conservare i cambiamenti che avete fatto. Questa sezione spiega come copiare, spostare, rinominare e cancellare file e directory.
Come per molte funzioni di Linux, avete una gamma di opzioni fra le quali scegliere quando maneggiate file e directory. Potete usare anche le wildcard.
Per copiare un file, digitate il comando seguente:
cp <filesorgente> <destinazione> |
Per copiare il file sneakers.txt nella directory tigger, che si trova nella vostra directory di login, spostatevi nella vostra directory di login e digitate:
cp sneakers.txt tigger |
Notate che avete anche usato dei percorsi relativi per copiare il file. Con il comando cp potete usare sia percorsi relativi che assoluti. La nostra directory di login è imparentata con la directory tigger; tigger è una sottodirectory della directory di login.
Per un elenco completo delle opzioni disponibili con cp, visualizzate la relativa pagina man (man cp). Di seguito sono riportate alcune delle opzioni che potete usare con cp.
-i — Vi chiede di confermare se il file sovrascrive un altro file. Si tratta di un'opzione utile poiché evita di commettere errori.
-r — Invece di copiare tutti i file e tutte le directory, il comando copia tutto l'albero delle directory, sottodirectory ecc.
-v — Mostra lo stato dei file che state copiando.
Se usate cp senza opzioni, non vedete molto quando eseguite il comando. L'utilizzo di un'opzione come -i può rendere il processo più utile. Se volete copiare un file in una posizione dove esiste già un file con lo stesso nome, vi viene chiesto se volete veramente sovrascrivere (o sostituire) il file esistente.
Adesso che il file sneakers.txt si trova nella directory tigger, usate cp -i per copiare di nuovo il file nella stessa posizione.
[newuser@localhost newuser]$ cp -i sneakers.txt tigger cp: overwrite 'tigger/sneakers.txt'? |
Per sovrascrivere il file esistente, premete Y e poi Invio. Se non volete sostituire il file, premete N e Invio.
Per spostare un file, usate il comando mv. Questo comando è simile a cp, ma sposta fisicamente il file da un punto a un altro, anziché limitarsi a copiarlo. Per maggiori informazioni su mv, consultate la relativa pagina man digitando man mv.
Di seguito sono riportate alcune delle opzioni di mv:
-i — Vi chiede se il file che avete selezionato sovrascrive un altro file nella directory di destinazione. E' un'opzione molto utile, poiché, come per l'opzione -i di cp, avete la possibilità di controllare se volete veramente sostituire un file esistente.
-f — Sposta il file senza chiedere conferma. Se non sapete esattamente cosa state facendo, l'opzione può essere molto pericolosa. Usatela con precauzione.
-v — Visualizza un elenco dei file che state spostando.
Se volete spostare un file della vostra directory home in un'altra directory, digitate quanto segue (vi dovete trovare nella vostra directory home):
mv sneakers.txt tigger |
Lo stesso comando usato con percorsi assoluti è simile a mv sneakers.txt /home/newuser /home/newuser/tigger.
A dire il vero abbiamo già trattato in parte la funzione poiché quando copiate o spostate un file, potete anche rinominarlo.
Per copiare il file sneakers.txt della vostra directory di login nella sottodirectory tigger, digitate:
cp sneakers.txt tigger |
Per copiare e rinominare il file sneakers.txt con piglet.txt, digitate:
cp sneakers.txt tigger/piglet.txt |
Per spostare e rinominare il file, sostituite cp con mv nell'esempio riportato sopra.
Se digitate cd per arrivare al file tigger digitate ls e vedrete il file piglet.txt.
Se volete semplicemente rinominare il file e mantenere la sua posizione, digitate mv per spostarvi nella directory corrente:
mv sneakers.txt piglet.txt |
Avete imparato a creare file usando il comando touch e il ridirezionamento spiegato nel Capitolo 10. Avete anche creato la directory tigger usando mkdir.
Adesso dovete imparare a cancellare file e directory. La cancellazione di file e directory tramite l'utilizzo del comando rm è un processo molto diretto. Per maggiori informazioni, consultate la pagina man di rm. Di seguito sono riportate alcune delle opzioni disponibili:
-i — Vi chiede di confermare la cancellazione. L'opzione vi impedisce di cancellare un file che non volete cancellare.
-f — Rimuove il file senza chiedere conferma all'utente. Ne sconsigliamo l'utilizzo in caso di dubbi.
-v — Visualizza un elenco dei file che cancellate.
-r — Cancella una directory e tutti i file e le sottodirectory che contiene.
Per cancellare il file piglet.txt dalla directory tigger digitando il comando rm:
rm piglet.txt |
Che cosa succede se non lo volevate cancellare? Troppo tardi! Ecco perché è preferibile usare l'opzione -i. Questa vi offre infatti la possibilità di pensare se volete conservare o cancellare il file.
[newuser@localhost newuser]$ rm -i piglet.txt rm: remove 'piglet.txt'? |
Potete anche cancellare file usando il wildcard *, ma fate attenzione perché rischiate di cancellare file che volevate invece conservare.
Per cancellare un file usando il wildcard, digitate:
rm pig* |
Questo comando cancella tutti i file contenuti nella directory che iniziano con le lettere "pig."
Con un unico comando potete cancellare più file:
rm piglet.txt sneakers.txt |
Di seguito sono riportate alcune delle opzioni per la rimozione di file e directory:
-i — Vi chiede di confermare la cancellazione per evitare di cancellare un file che volete conservare.
-f — Rimuove il file senza chiedere conferma all'utente. Ve ne sconsigliamo l'utilizzo se non siete utenti esperti.
-v — Mostra l'elenco dei file che cancellate.
-r — Cancella una directory e tutti i file e tutte le sottodirectory che contiene.
Potete usare rmdir per cancellare una directory (rmdir foo, per esempio), ma solo se la directory è vuota. Per cancellare una directory con rm, dovete specificare l'opzione -r.
Per esempio, se volete rimuovere la directory tigger, digitate:
rm -r tigger |
Se volete combinare più opzioni, per esempio se volete forzare una cancellazione, digitate:
rm -rf tigger |
Siate prudenti quando usate rm! | |
---|---|
Il comando rm può cancellare tutto il vostro filesystem! Se siete collegati come root e digitate il comando rm -rf /, cancellate tutti i dati contenuti nel vostro sistema. |
Come alternativa all'opzione rm potete usare il comando rmdir. Con questo comando non avete l'autorizzazione di cancellare una directory che contiene file.
Per maggiori informazioni sul comando, consultate la pagina man di the rmdir (man rmdir).