2014-09-19 8 views
7

Ho ricevuto un errore quando aggiungo>/dev/null al comando tar, qualcuno sa cosa sta succedendo nel secondo esempio?rimozione tar che porta '/' dai nomi dei membri

buono:

tar -cvf $kname /var/www 

male:

tar -cvf $kname /var/www > /dev/null 

error:tar: Removing leading `/' from member names 
+4

Sono l'unico che è infastidito dal fatto che il messaggio di tar ha due virgolette diverse? Il primo è un apice e il secondo è una citazione singola. –

+0

Vedere anche [tar: rimozione di leading \ '/ 'dai nomi dei membri] (http://unix.stackexchange.com/q/59243) –

+0

Purtroppo tar lo stampa all'inizio della costruzione dell'archivio in modo da non perdere questo messaggio se lo schermo scorre verso l'alto. – H2ONaCl

risposta

9

La versione "buona" è anche visualizzato lo stesso messaggio che hai appena perso.

Se non ti piace il comportamento, cerca "leading", nel manuale. Primo colpo:

-P, --absolute-names 
     don't strip leading '/'s from file names 
+0

la versione corretta può essere eseguita correttamente. ma il verso sbagliato mi ha dato l'errore "tar: rimozione di leader /" dai nomi dei membri ". non ho capito bene questo messaggio di errore, come posso risolvere l'errore? – Hebing

+1

La versione "cattiva" può essere eseguita altrettanto correttamente. Come ho detto, entrambi mostrano lo stesso messaggio. –

+0

l'aggiunta di "-P" funziona, vedi: tar -cvf test.tar -P/var/www>/dev/null, grazie – Hebing

5

Questo perché il file ($kname) è leader /.

Per risolvere il problema, è possibile specificare -C per modificare la directory, anziché specificare il percorso completo del file di archivio.

+3

mentre '-P' funziona come soluzione,' -C' è probabilmente più quello che vuoi. – pdeschen

0

Potrebbe essere meglio lasciare i file senza il '/' nel backup e ignorare il messaggio di errore. Tar lo fa come una precauzione di sicurezza, perché se decidi di decomprimere il file, esso rimetterà automaticamente i file nella directory originale. Questo può essere pericoloso e molte persone vogliono evitarlo. Personalmente, sarei felice del fatto che ha rimosso il '/' e quindi il ripristino sarà relativo e non il percorso della directory assoluta. Quindi puoi spostare manualmente i file nel posto giusto o in un posto diverso. Inserendo questo messaggio, le persone sono consapevoli e non inavvertitamente sostituiscono i loro file originali.

Problemi correlati