[Risolto] opzione -C comando tar per creare archivi dubbio
[Risolto] opzione -C comando tar per creare archivi dubbio
salve a tutti devo creare uno script che archivi il contenuto di una cartella, questa cartella non si trova nella directory in cui sono posizionato per mezzo del terminale quando avvio lo script, il mio problema è che usando il comando tar -cf /path_destinazione/archivio.tar /path_sorgente/* nell'archivio inserisce non solo i file contenuti nella cartella specificata con il /path_sorgente/ ma anche tutte le cartelle "superiori" ovvero apro l'archivo e invece di vedere i file c'è la cartella home
poi aprendola trovo le varie sottocartelle fino ad arrivare a quella che contiene i file archiviati, invece vorrei archiviare solo i file senza tutte queste "cartelle matriosca" credo che si possa usare l'opzione -C ma non ho capito come, potete aiutarmi?
grazie mille
poi aprendola trovo le varie sottocartelle fino ad arrivare a quella che contiene i file archiviati, invece vorrei archiviare solo i file senza tutte queste "cartelle matriosca" credo che si possa usare l'opzione -C ma non ho capito come, potete aiutarmi?
grazie mille
Ultima modifica di gto_linux il giovedì 25 giugno 2015, 18:30, modificato 3 volte in totale.
- SuperStep
- Entusiasta Emergente

- Messaggi: 2037
- Iscrizione: lunedì 19 dicembre 2011, 16:26
- Desktop: Unity
- Distribuzione: Ubuntu 16.04 LTS x86_64
- Sesso: Maschile
- Località: Somma Vesuviana (NA)
Re: opzione -C comando tar per creare archivi dubbio
da man tar
puoi specificare la directory di partenza
Codice: Seleziona tutto
-C, --directory DIR
change to directory DIR
Codice: Seleziona tutto
tar [...] --directory|-C /path/to/root/directory
ubuntu 16.04 LTS 64-bit - Memoria: 31,3 Gib - Processore: Intel Core i7-5960X CPU @ 3.00 GHz × 16 - Grafica: AMD Radeon HD 7800 Series - Disco: SSD 256 GB x 4 (RAID 01)
Re: opzione -C comando tar per creare archivi dubbio
grazie per la risposta ma leggendo il manuale non capivo dove mettere l'opzione -C, comunque ho provato con questo comando e mi da errore
invece usando
Codice: Seleziona tutto
tar -cf -C /home/mia/Scrivania/cartella/* /home/mia/Scrivania/cartella2/archivio.tar
tar: Rimozione di "/" iniziale dai nomi dei membri
tar: /home/mia/Scrivania/cartella2/archivio.tar: funzione "stat" non riuscita: File o directory non esistente
tar: Uscita con stato di fallimento in base agli errori precedentiCodice: Seleziona tutto
tar -cf /home/mia/Scrivania/cartella2/archivio.tar -C /home/mia/Scrivania/cartella/*
tar: Rifiuto totale di creare un archivio vuoto
Provare "tar --help" o "tar --usage" per ulteriori informazioni.
Ultima modifica di gto_linux il giovedì 25 giugno 2015, 16:18, modificato 1 volta in totale.
- crap0101
- Rampante Reduce

- Messaggi: 8242
- Iscrizione: martedì 30 ottobre 2007, 6:33
- Desktop: LXDE
- Distribuzione: Ubuntu 18.04.1 LTS
- Sesso: Maschile
- Località: TO
- Contatti:
Re: opzione -C comando tar per creare archivi dubbio
l'opzione di -C è solo il percorso in cui vuoi spostarti prima di eseguire le operazioni, per cui devi indicare un solo path, non /percorso/* .
Invece il primo non va perchè -f si aspetta un argomento, cioè il nome del file che vuoi creare, non -C.
Invece il primo non va perchè -f si aspetta un argomento, cioè il nome del file che vuoi creare, non -C.
http://www.gnu.org/ http://boinc.berkeley.edu/ http://www.python-it.org/
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
- SuperStep
- Entusiasta Emergente

- Messaggi: 2037
- Iscrizione: lunedì 19 dicembre 2011, 16:26
- Desktop: Unity
- Distribuzione: Ubuntu 16.04 LTS x86_64
- Sesso: Maschile
- Località: Somma Vesuviana (NA)
Re: opzione -C comando tar per creare archivi dubbio
con -C ti trovi nel path. Quindi è come se cercasse "/home/mia/Scrivania/cartella//home/mia/Scrivania/cartella2/archivio.tar "quello che devi fare è una cosa del genere:
archivio.tar viene creato dove ti trovi, altrimenti metti il path assoluto oppure usa mv dopo per spostarlo.
Codice: Seleziona tutto
tar -zcvf archivio.tar /home/mia/Scrivania/cartella
ubuntu 16.04 LTS 64-bit - Memoria: 31,3 Gib - Processore: Intel Core i7-5960X CPU @ 3.00 GHz × 16 - Grafica: AMD Radeon HD 7800 Series - Disco: SSD 256 GB x 4 (RAID 01)
Re: opzione -C comando tar per creare archivi dubbio
ragazzi scusate ma continuo a non capire, provo a fare un riassunto
il comando che ho usato fin ora è
problema: crea l'archivio in "formato matriosca"
l'ultimo che suggerisce SuperStep crea sempre un archivio in "formato matriosca" anche perchè è concettualmente uguale a quello usato da me
opzione -C da quello che ho capito si può specificare un solo path quello del sorgente, ovvero la cartella in cui stanno i file che vorrei archiviare allora dopo quei due tentativi errati ho provato
il comando che ho usato fin ora è
Codice: Seleziona tutto
tar -cf /path_destinazione/archivio.tar /path_sorgente/* problema: crea l'archivio in "formato matriosca"
l'ultimo che suggerisce SuperStep crea sempre un archivio in "formato matriosca" anche perchè è concettualmente uguale a quello usato da me
Codice: Seleziona tutto
tar -zcvf archivio.tar /home/mia/Scrivania/cartella Codice: Seleziona tutto
tar -cf archivio.tar -C /home/mia/Scrivania/cartella
tar: Rifiuto totale di creare un archivio vuoto
Provare "tar --help" o "tar --usage" per ulteriori informazioni.- SuperStep
- Entusiasta Emergente

- Messaggi: 2037
- Iscrizione: lunedì 19 dicembre 2011, 16:26
- Desktop: Unity
- Distribuzione: Ubuntu 16.04 LTS x86_64
- Sesso: Maschile
- Località: Somma Vesuviana (NA)
Re: opzione -C comando tar per creare archivi dubbio
scusami ma cosa intenti per formato matriosca? spiega bene quello che vuoi fare e fornisci degli esempi, perchè non ho capito cosa vuoi realizzare.
ubuntu 16.04 LTS 64-bit - Memoria: 31,3 Gib - Processore: Intel Core i7-5960X CPU @ 3.00 GHz × 16 - Grafica: AMD Radeon HD 7800 Series - Disco: SSD 256 GB x 4 (RAID 01)
Re: opzione -C comando tar per creare archivi dubbio
saga [url=http://forum.ubuntu-it.org/viewtopic.php?p=4773530#p4773530][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:nell'archivio inserisce non solo i file contenuti nella cartella specificata con il /path_sorgente/ ma anche tutte le cartelle "superiori" ovvero apro l'archivo e invece di vedere i file c'è la cartella home
poi aprendola trovo le varie sottocartelle fino ad arrivare a quella che contiene i file archiviati, invece vorrei archiviare solo i file senza tutte queste "cartelle matriosca"
- SuperStep
- Entusiasta Emergente

- Messaggi: 2037
- Iscrizione: lunedì 19 dicembre 2011, 16:26
- Desktop: Unity
- Distribuzione: Ubuntu 16.04 LTS x86_64
- Sesso: Maschile
- Località: Somma Vesuviana (NA)
Re: opzione -C comando tar per creare archivi dubbio
questo perche' devi specificare il path della cartella che vuoi rendere un archivio.
ad esempio se voglio archiviare la directory /home/mia/Scrivania/dati, allora la cartella da comprimere sara' al path "/home/mia/Scrivania/dati" e la directory dati verra' compressa insieme a tutti i file contenuti al suo interno ricorsivamente. se tu per ipotesi specificassi di comprimere /, allora comprimeresti tutto il disco (tutti i file contenuti sul disco).
ad esempio se voglio archiviare la directory /home/mia/Scrivania/dati, allora la cartella da comprimere sara' al path "/home/mia/Scrivania/dati" e la directory dati verra' compressa insieme a tutti i file contenuti al suo interno ricorsivamente. se tu per ipotesi specificassi di comprimere /, allora comprimeresti tutto il disco (tutti i file contenuti sul disco).
ubuntu 16.04 LTS 64-bit - Memoria: 31,3 Gib - Processore: Intel Core i7-5960X CPU @ 3.00 GHz × 16 - Grafica: AMD Radeon HD 7800 Series - Disco: SSD 256 GB x 4 (RAID 01)
Re: opzione -C comando tar per creare archivi dubbio
ok però mi sembra che sia quello che ho fatto quando ho usato la prima volta
togliendo il /* finale dal path della cartella sorgente il risultato purtroppo è lo stesso, quando vado ad aprire l'archivio non trovo subito i file ma la cartella home
aprendola trovo la carella mia poi la cartella scrivania e infine la cartella che contiene i file aprendo quest'ultima arrivo finalmente ai file
Codice: Seleziona tutto
tar -cf /home/mia/Scrivania/cartella2/archivio.tar /home/mia/Scrivania/cartella/*
tar: Rimozione di "/" iniziale dai nomi dei membri
aprendola trovo la carella mia poi la cartella scrivania e infine la cartella che contiene i file aprendo quest'ultima arrivo finalmente ai file
- crap0101
- Rampante Reduce

- Messaggi: 8242
- Iscrizione: martedì 30 ottobre 2007, 6:33
- Desktop: LXDE
- Distribuzione: Ubuntu 18.04.1 LTS
- Sesso: Maschile
- Località: TO
- Contatti:
Re: opzione -C comando tar per creare archivi dubbio
il /* non c'entra col problema delle cartelle genitore e tra l'altro non serve, siccome tar di default è ricorsivo.saga ha scritto:ok però mi sembra che sia quello che ho fatto quando ho usato la prima voltatogliendo il /* finale dal path della cartella sorgente il risultato purtroppo è lo stesso, quando vado ad aprire l'archivio non trovo subito i file ma la cartella homeCodice: Seleziona tutto
tar -cf /home/mia/Scrivania/cartella2/archivio.tar /home/mia/Scrivania/cartella/* tar: Rimozione di "/" iniziale dai nomi dei membri
aprendola trovo la carella mia poi la cartella scrivania e infine la cartella che contiene i file aprendo quest'ultima arrivo finalmente ai file
Devi usare l'opzione -C PATH indicando il PATH in cui vuoi spostarti e poi indicare il percorso relativo di ciò che vuoi archiviare.
Codice: Seleziona tutto
crap0101@orange:~$ mkdir -p /tmp/foo/bar/baz
crap0101@orange:~$ tar cf arch.tar /tmp/foo/ # "sbagliato"
tar: Rimozione di "/" iniziale dai nomi dei membri
crap0101@orange:~$ tar tf arch.tar
tmp/foo/
tmp/foo/bar/
tmp/foo/bar/baz/
crap0101@orange:~$ tar -C /tmp/ -cf arch.tar foo/ # senza le dir superiori
crap0101@orange:~$ tar tf arch.tar
foo/
foo/bar/
foo/bar/baz/
http://www.gnu.org/ http://boinc.berkeley.edu/ http://www.python-it.org/
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
Re: opzione -C comando tar per creare archivi dubbio
ok adesso ho capito, sbagliavo a usare l'opzione -C benissimo grazie a entrambi per l'aiuto 
Chi c’è in linea
Visualizzano questa sezione: 0 utenti iscritti e 4 ospiti
