Continuiamo ad esplorare il fantastico mondo di Gnu/Linux.
Il comando di oggi, non fa altro che comprimere la directory di lavoro al volo, evidenziando i progressi, e spostandola nella posizione voluta.
tar -cf – . | pv -s $(du -sb . | awk ‘{print $1}’) | gzip > out.tgz
Ciò che accade è che indichiamo a tar di creare “-c”, un archivio di tutti i file nella directory corrente “.” (ricorsivamente), stampando l output dei dati verso lo stdout “-f -”, poi andiamo a specificare la dimensione “-s” di tutti i file nella directory corrente, per il comando “pv”, il prossimo passo: du “-sb. | awk? (Print $ 1)?” restituisce il numero di byte della directory corrente, poi zippiamo tutto il contenuto ed inviamo l outpup verso il file “out.tgz”
Articoli correlati:
Linux shell: Scompattare dalla rete
Linux, il meglio degli ultimi 10 anni secondo IBM developerWorks