Regole del forum
1) Citare in modo preciso il nome del pacchetto.
2) Specificare se discussione/suggerimento o richiesta d'aiuto.
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.
Esiste un modo per determinare in bash a priori le dimensioni che una directory assumerà una volta compressa in tar.xz (oppure in altre forme di compressione) PRIMA che il file compresso sia creato?
Mi spiego meglio: sto scrivendo uno script in bash per il backup. Ipotizziamo di trovarci ad un certo punto nella directory pippo che dovrà essere compressa dallo script in pippo.tar.xz, le dimensioni (in megabyte 1024x1024) della directory pippo le posso visualizzare facilmente così:
du -sm . # assumendo di trovarci all'interno di pippo
ma supponiamo ora che io voglia stimare le dimensioni (sempre in megabyte 1024x1024) del futuro (non ancora creato) file compresso pippo.tar.xz... esiste un modo?
Ultima modifica di tom il lun 20 giu 2011, 21:05, modificato 1 volta in totale.
Impossibile!
Se la directory contiene solo "flat files",
puoi valutate la compressione secondo il manuale del compressore.
Se la directory contiene files mescolati con *.jpg, *.wav ecc. dimenticalo.
Ho fatto un test con un file *.jpg
4'846'050 bytes, compresso con bzip2(1)
4'798'402 bytes, non prevedibile.
il comando tar con l'opzione 'c' manda già l'output sullo stdout, quindi l'opzione 'f -' non serve.
anche l'opzione 'v' potresti evitarla, anche se poi, alla fine, dipende da cosa ci vuoi fare.
Così tu hai "compresso" i dati. Non è proprio quello che avevi chiesto e a cui, credo, Mario ti ha risposto. Infatti, senza processare i dati, è difficile fare ciò che chiedi.
Emanuele
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
il comando tar con l'opzione 'c' manda già l'output sullo stdout, quindi l'opzione 'f -' non serve.
anche l'opzione 'v' potresti evitarla, anche se poi, alla fine, dipende da cosa ci vuoi fare.
Così tu hai "compresso" i dati. Non è proprio quello che avevi chiesto e a cui, credo, Mario ti ha risposto. Infatti, senza processare i dati, è difficile fare ciò che chiedi.
Emanuele
Per stabilire il livello di compressione ottenibile bisogna conoscere la "natura" della sequenza dati , più essa è casuale minore è la compressione ottenibile. Al limite è nulla.