tar, comprimere singolarmente i file di una directory [RIS]
Moderatore: Staff
Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
- tgmx
- Linux 4.x
- Messaggi: 1336
- Iscritto il: ven 28 apr 2006, 14:40
- Slackware: 14.1
- Desktop: KDE 4
- Località: Ancona
tar, comprimere singolarmente i file di una directory [RIS]
Ciao a tutti,
sto cercando di fare un piccolo script, lanciato da cron che comprima i file che si trovano in una directory creando un tar.gz singolo per ogni file.
Es:
se la directory contiene i file:
a.dat
b.dat
c.dat
vorrei ottenere con un solo passaggio:
a.tar.gz
b.tar.gz
c.tar.gz
e se proprio vogliamo esagerare non sarebbe male eliminare l'originale dopo la conpressione...
Avete idee...
sto cercando di fare un piccolo script, lanciato da cron che comprima i file che si trovano in una directory creando un tar.gz singolo per ogni file.
Es:
se la directory contiene i file:
a.dat
b.dat
c.dat
vorrei ottenere con un solo passaggio:
a.tar.gz
b.tar.gz
c.tar.gz
e se proprio vogliamo esagerare non sarebbe male eliminare l'originale dopo la conpressione...
Avete idee...
Ultima modifica di tgmx il mer 23 mag 2012, 8:44, modificato 1 volta in totale.
- conraid
- Staff
- Messaggi: 13630
- Iscritto il: gio 14 lug 2005, 0:00
- Nome Cognome: Corrado Franco
- Slackware: current64
- Desktop: kde
- Località: Livorno
- Contatta:
Re: tar, comprimere singolarmente i file di una directory
una cosa simile
anche se migliorabile, per eliminare ti basta rm $FILE
prova così
Codice: Seleziona tutto
for FILE in "*"; do tar -czf $(basename $FILE).tar.gz $FILE; done
prova così
Codice: Seleziona tutto
for FILE in "*"; do
tar -czf $(basename $FILE).tar.gz $FILE
rm $FILE
done
- targzeta
- Iper Master
- Messaggi: 6631
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: tar, comprimere singolarmente i file di una directory
Per eliminare i file basta questa opzione di tar:però, parliamone, che senso ha creare un archivio con dentro solo un file? Non è più semplice zipparlo se vuoi ridurne lo spazio? Cioé, un archivio è un archivio...no?
Emanuele
Codice: Seleziona tutto
--remove-files
remove files after adding them to the archive
Emanuele
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- tgmx
- Linux 4.x
- Messaggi: 1336
- Iscritto il: ven 28 apr 2006, 14:40
- Slackware: 14.1
- Desktop: KDE 4
- Località: Ancona
Re: tar, comprimere singolarmente i file di una directory
Grazie.conraid ha scritto:una cosa simileanche se migliorabile, per eliminare ti basta rm $FILECodice: Seleziona tutto
for FILE in "*"; do tar -czf $(basename $FILE).tar.gz $FILE; done
prova cosìCodice: Seleziona tutto
for FILE in "*"; do tar -czf $(basename $FILE).tar.gz $FILE rm $FILE done
Ho dovuto aggiungere le virgolette su:
Codice: Seleziona tutto
basename "$FILE"
Così però mi crea un unico archivio con tutti i file dentro.
Apparentemente il FOR non scorre il contenuto della directory ma restituisce l'elenco dei file mettendoli tutti dentro la variabile FILE in una sola volta.
- cymon
- Linux 2.x
- Messaggi: 430
- Iscritto il: ven 5 gen 2007, 1:40
- Slackware: 13.1
- Kernel: 2.6.33.4-smp
- Desktop: Fluxbox
- Località: Milano
- Contatta:
Re: tar, comprimere singolarmente i file di una directory
Non è più carino:
comunque il tar di un singolo file è effettivamente inutile, a questo punto, se proprio serve, meglio partire direttamente con gzip.
Codice: Seleziona tutto
find . -exec tar czvf {}.tar.gz {} \; ?
- tgmx
- Linux 4.x
- Messaggi: 1336
- Iscritto il: ven 28 apr 2006, 14:40
- Slackware: 14.1
- Desktop: KDE 4
- Località: Ancona
Re: tar, comprimere singolarmente i file di una directory
Perfetto,cymon ha scritto:Non è più carino:comunque il tar di un singolo file è effettivamente inutile, a questo punto, se proprio serve, meglio partire direttamente con gzip.Codice: Seleziona tutto
find . -exec tar czvf {}.tar.gz {} \; ?
così funziona. Grazie.
Per quanto riguarda gzip, l'ho appena provato in questo modo:
Codice: Seleziona tutto
find ./*.dat -exec gzip {} \;
Grazie a tutti!
- conraid
- Staff
- Messaggi: 13630
- Iscritto il: gio 14 lug 2005, 0:00
- Nome Cognome: Corrado Franco
- Slackware: current64
- Desktop: kde
- Località: Livorno
- Contatta:
Re: tar, comprimere singolarmente i file di una directory [R
per basename si vede che hai nomi di file con spazi, per il for forse c'è qualche errore di sintassi
se usi gzip, ti basta gzip *
se usi gzip, ti basta gzip *
- tgmx
- Linux 4.x
- Messaggi: 1336
- Iscritto il: ven 28 apr 2006, 14:40
- Slackware: 14.1
- Desktop: KDE 4
- Località: Ancona
Re: tar, comprimere singolarmente i file di una directory [R
Grande!
Sempre piu' facile... gzip fa miracoli ed io lo ignoravo completamente.
Sempre piu' facile... gzip fa miracoli ed io lo ignoravo completamente.