Comando mv

Scopo

Sposta i file.

Sintassi

Spostare e ridenominare un file

mv [ -E{force|ignore|warn} ] [ -i | -f ] [ -I ] SourceFile ... TargetFile

Spostare e ridenominare un indirizzario

mv -E{force|ignore|warn} ] [ -i | -f ] [ -I ] Indirizzario di origine ... Indirizzario di destinazione

Spostare i file o gli indirizzari in un indirizzario conservando i nomi file originali

mv -E{force|ignore|warn} ] [ -i | -f ] [ -I ] File di origine/Indirizzario di origine Indirizzario di destinazione

Descrizione

Attenzione: il comando mv può sovrascrivere più file esistenti a meno che si specifica l'indicatore -i. L'indicatore -i richiede la conferma prima di sovrascrivere un file. Se si specificano entrambi gli indicatori -f e -i in combinazione, l'ultimo indicatore specificato ha la precedenza.

Il comando mv sposta i file e gli indirizzari da un indirizzario ad un altro o ridenomina un file o un indirizzario. Se si sposta un file o un indirizzario in un nuovo indirizzario, conserva il nome del file di base. Quando si sposta un file, tutti i collegamenti ad altri file restano integri, tranne quando si sposta il file in un filesystem diverso. Quando si sposta un indirizzario in un indirizzario esistente, l'indirizzario e il relativo contenuto vengono aggiunti sotto l'indirizzario esistente.

Quando si utilizza il comando mv per ridenominare un file o un indirizzario, il parametro Indirizzario di destinazione può specificare sia un nuovo nome file che un nuovo nome di percorso indirizzario.

Se lo spostamento del file sovrascriverebbe un file esistente che non ha impostato il permesso di scrittura e se l'immissione standard è una stazione di lavoro, il comando mv visualizza il codice dei permessi file e legge una riga dall'immissione standard. Se la riga inizia con una y o l'equivalente dell'impostazione internazionale della y, il comando mv sposta il file. Se la risposta è diversa da y, il comando mv non esegue alcuna operazione sul file e continua con il file specificato successivo. Il codice di permesso-file visualizzato potrebbe non rappresentare totalmente il premesso di accesso se il File di destinazione è associato ad un ACL. Quando l'indirizzario principale del File di origine è scrivibile e dispone di una serie di bit permanenti, una o più condizioni fra quelle riportate di seguito è vera:

Questo messaggio di avvertenza e la richiesta di immissione possono essere sovrascritti utilizzando l'opzione -f.

E' possibile utilizzare il comando mv per spostare i file nello stesso filesystem o tra i filesystem. Se si sta lavorando in un filesystem o tra più filesystem, il comando mv copia il file nella destinazione ed elimina il file originale. Il comando mv conserva nel nuovo file l'ora della modifica più recente, l'ora dell'accesso più recente, l'ID utente, l'ID gruppo, la modalità file, gli attributi estesi e gli ACL del file originale. Per i collegamenti simbolici, il comando mv conserva solo il proprietario ed il gruppo del collegamento stesso.

Se non riesce a conservare il proprietario e l'ID gruppo, il comando mv elimina i bit S_ISUID e S_ISGID nella destinazione. Il comando mv stampa un messaggio diagnostico in stderr se non riesce ad eliminare tali bit, anche se il codice di uscita non ne viene influenzato.

Il comando mv modifica il file di origine o il percorso di destinazione se il comando viene terminato in anticipo.

Nota:
il comando mv supporta il parametro (trattino, trattino) come un delimitatore che indica la fine degli indicatori.

Il comando mv non sposterà un oggetto se l'oggetto viene esportato come un riferimento NFS di versione 4. L'oggetto di riferimento viene contrassegnato come occupato e resta in tale stato fino a quando viene esportato.

Indicatori

Attenzione: il comando mv può sovrascrivere più file esistenti a meno che si specifica l'indicatore -i. L'indicatore -i richiede la conferma prima di sovrascrivere un file. Se si specificano entrambi gli indicatori -f e -i in combinazione, l'ultimo indicatore specificato ha la precedenza.
-E L'opzione -E richiede uno dei seguenti argomenti. Se si omette l'opzione -E, warn è il comportamento predefinito.
force
Causa l'esito negativo di un'operazione mv in un file se la dimensione dell'estensione fissa o la riserva di spazio in un file non può essere conservata.
ignore
Ignora tutti gli errori nella conservazione degli attributi dell'estensione.
warn
Emette un'avvertenza se la riserva di spazio o la dimensione dell'estensione fissa del file non può essere conservata.
-f Non richiede la conferma prima di sovrascrivere un file esistente.
-i Richiede conferma prima di spostare un file o un indirizzario in un nome percorso esistente, visualizzando il nome del file seguito da un punto interrogativo. Se si risponde con una riga che inizia con y o con l'equivalente dell'impostazione internazionale di y, lo spostamento continua. Una qualsiasi altra risposta impedisce lo spostamento.
-I Sopprime il messaggi di avvertenza durante la conversione ACL.

Esempi

  1. Per ridenominare un file, immettere:

    mv appendix apndx.a

    Quando comando ridenomina appendix in apndx.a. Se un file denominato apndx.a esiste già, il contenuto precedente viene sostituito con quello di appendix.

  2. Per spostare un indirizzario, immettere:

    mv book manual

    Questo comando sposta tutti i file e gli indirizzari di book nell'indirizzario denominato manual, se manual esiste già. In caso contrario, l'indirizzario book viene ridenominato manual.

  3. Per spostare un file in un altro indirizzario e ridenominarlo, immettere:

    mv intro manual/chap1

    Questo comando sposta intro in manual/chap1. Il nome intro viene rimosso dall'indirizzario corrente e lo stesso file viene visualizzato come chap1 nell'indirizzario manual.

  4. Per spostare un file in un altro indirizzario conservandone il nome, immettere:

    mv chap3 manual

    Questo comando sposta chap3 in manual/chap3

    Nota: gli esempi 1 e 3 denominano due file, l'esempio 2 denomina due indirizzari esistenti e l'esempio 4 denomina un file e un indirizzario.
  5. Per spostare più file in un altro indirizzario, immettere:

    mv chap4 jim/chap5 /home/manual

    Questo comando sposta il file chap4 nell'indirizzario di file /home/manual/chap4 e il file jim/chap5 nel file /home/manual/chap5.

  6. Per utilizzare il comando mv con i caratteri di corrispondenza modello, immettere:

    mv manual/* .

    Questo comando sposta tutti i file nell'indirizzario manual nell'indirizzario corrente . (punto), conservando i nomi che avevano in manual. Questo spostamento svuota anche manual. E' necessario immettere uno spazio tra l'asterisco ed il punto.

    Nota: i caratteri di corrispondenza modello espandono solo i nomi di file esistenti. Ad esempio, il comando mv intro man*/chap1 non funziona se il file manual/chap1 non esiste.

Stato di uscita

0 Tutti i file di immissione sono stati spostati correttamente.
>0 Si è verificato un errore.

File

/usr/bin/mv Contiene il comando mv.

Informazioni correlate

Il comando chmod e il comando rm.


Invia feedback |  Valuta questa pagina