ci sono molti metodi di compressione che funzionano in modo ricorsivo dalla riga di comando ed è bene sapere chi è il pubblico finale.
ad esempio, se deve essere inviato a qualcuno che esegue Windows, allora zip sarebbe probabilmente il migliore:
zip -r file.zip folder_to_zip
unzip filenname.zip
per altri utenti Linux o il tuo tar personale è fantastico
tar -cvzf filename.tar.gz folder
tar -cvjf filename.tar.bz2 folder # even more compression
#change the -c to -x to above to extract
Bisogna stare attenti con tar e come le cose vengono tarate/estratte, per esempio se eseguo
cd ~
tar -cvzf passwd.tar.gz /etc/passwd
tar: Removing leading `/' from member names
/etc/passwd
pwd
/home/mionomeutente
tar -xvzf passwd.tar.gz
questo creerà/home/myusername/etc/passwd
unsure se tutte le versioni di tar lo fanno:
Removing leading `/' from member names
Il post di @amitchhajer funziona per GNU tar. Se qualcuno trova questo post e ne ha bisogno per lavorare su un NON GNU
system, possono farlo:
tar cvf - folderToCompress | gzip > compressFileName
Per espandere l'archivio:
zcat compressFileName | tar xvf -
tar -zcvf compressFileName.tar.gz folderToCompress
tutto in folderToCompress andrà a compressFileName
Modifica:dopo la revisione e i commenti mi sono reso conto che le persone potrebbero confondersi con compressFileName senza un'estensione. Se vuoi puoi usare l'estensione .tar.gz (come suggerito) con compressFileName