Torniamo al solito problema che diventa un vantaggio per molti utenti GNU / Linux avanzati ed è il gran numero di alternative o possibilità disponibili. Questo per i più inesperti può essere un problema quando non si sa bene quale scegliere, ma come ho detto, avere più possibilità o flessibilità non è mai una cosa negativa, anzi. In questo caso parleremo del file algoritmi e procedure di compressione e decompressione che esistono sulla nostra piattaforma preferita in modo che tu possa vederli in modo diverso e non come un grande casino non sapendo quale sia l'opzione migliore nel tuo caso ...
La verità è che non ci sono solo strumenti usati come tar con i quali possiamo creare pacchetti a cui possono anche essere aggiunti alcuni tipi di compressione come siamo abituati a vedere in i famosi tarball di cui abbiamo già parlato LxA in molte occasioni. Troveremo anche varianti di strumenti così banali e frequenti come grep per cercare all'interno di file compressi come bzfgrep, o anche altri come less and more che hanno anche le loro varianti per file compressi come bzless e bzmore. Per vederli tutti non ci resta che dare uno sguardo all'output del seguente comando:
apropos compress
Algoritmi e test:
Tra tutti algoritmi compressione senza perdite disponibile in Linux per comprimere e decomprimere i dati abbiamo molte opzioni. Per avere la prova del tempo necessario per comprimere con uno o un altro algoritmo di compressione o quanto tempo ci vuole per decomprimerlo, ti suggerisco di fare alcuni test da solo. Puoi usare il comando time per quello, che ti darà il tempo che è stato impiegato per il processo di compressione e decompressione. Ad esempio, se intendi utilizzare lo strumento zip per comprimere un file chiamato test:
time zip prueba.zip prueba
Ciò getterebbe via il tempo usato, ma se vuoi vedere la dimensione del file generatoPuoi provare a comprimere lo stesso file con diversi algoritmi e strumenti di compressione e una volta che hai tutti i file compressi in una directory con un semplice comando per elencare, controlla la dimensione di ciascuno:
ls -l
Se preferisci, puoi anche utilizzare altri strumenti per confrontare file compressi, ad esempio con alcune varianti dello strumento diff:
xzdiff [opciones] fichero1 fichero2 lzdiff [opciones] fichero 1 fichero2
Se vuoi vedere grafici sulla dimensione e velocità degli algoritmi, puoi visitare questo altro collegamento.
Strumenti di compressione:
Per quanto riguarda gli strumenti disponibili ne abbiamo molti, alcuni con un'interfaccia grafica per i neofiti e che dovremo semplicemente occuparci di una GUI semplice e intuitiva per eseguire compressioni e decompressioni come PeaZip, o 7zip, ... ecc. Nello specifico, il primo è in grado di lavorare con vari formati, in particolare più di 180 di essi. Ma se sei uno di quelli a cui piace ancora lavorare con il terminale, allora avrai un gran numero di strumenti che sicuramente conosci:
- zip e decomprimere: è una buona opzione se quello che vuoi sono file che siano portabili su altri sistemi operativi, poiché troverai strumenti per lavorare con questi file su sistemi Microsoft Windows e anche su macOS e altri. Ad esempio, per comprimere un file o una directory denominata test e quindi decomprimerlo:
zip prueba.zip prueba unzip prueba.zip
- gzip: È il migliore se quello che vuoi è semplicemente la portabilità tra i sistemi operativi Unix / Linux. Forse il tasso di compressione è quasi identico a zip, forse leggermente migliore, ma non troverai molta differenza nelle dimensioni dei file sotto zip o gzip. Per comprimere e decomprimere con questo strumento possiamo usare due opzioni in caso di decompressione e sono l'opzione -do, utilizzando direttamente l'alias gunzip:
gzip prueba gzip -d prueba.gz gunzip prueba.gz
- bzip2: Come il precedente, questo algoritmo è molto presente nei sistemi operativi Unix / Linux, sebbene richiederà un po 'più di tempo nei processi di compressione e decompressione rispetto al caso di gzip. In questo caso, il ritardo non si tradurrà in un tasso di compressione più alto come nel caso di xz, poiché i file compressi sotto bzip2 occuperanno un po 'più di quelli gzip. Ecco perché si consiglia di evitare bzip2 e optare invece per xz o gzip. Anche se tutto dipenderà un po 'dal tipo di file che stai cercando di comprimere ... Ad esempio:
bzip2 prueba bzip2 -d prueba.bz2
- xz: È il formato preferito per file di grandi dimensioni, in quanto offre i migliori tassi di compressione, ma è anche vero che ci vorrà più tempo per completare una compressione o decompressione. È abbastanza più recente dei precedenti, quindi potresti trovarti con distribuzioni più primitive o vecchi sistemi Unix che non hanno uno strumento per questo. Esempi:
xz prueba xz -d prueba.xz
- unrar e rar: Possiamo anche lavorare con i formati RAR in Linux grazie a questi strumenti, sebbene non sia così popolare nel caso dei sistemi * nix come i precedenti ... In questo caso possiamo scegliere:
rar a prueba.rar prueba unrar e prueba.rar
- comprimere e decomprimere: e sebbene l'uso di compress si stia perdendo e non sia popolare come i precedenti, non vorrei trascurare neanche questo strumento. Viene utilizzato per comprimere file con estensione .Z e lo fa grazie a un algoritmo Lempel-Ziv modificato. Per esempio:
compress -v prueba uncompress prueba.Z
Se vuoi lavorare direttamente con lo strumento tarPuoi anche comprimere e comprimere i file allo stesso tempo, nonché decomprimerli e decomprimerli. In questo caso possiamo passare le opzioni del tipo di algoritmo da utilizzare direttamente a tar. Ma prima di tutto dovresti sapere che con l'opzione c creiamo un pacchetto e con l'opzione x lo estraiamo. Per esempio:
tar czvf prueba.tar.gz prueba tar xzvf prueba.tar.gz
Come puoi vedere abbiamo usato le opzioni zvf che indicano il tipo di algoritmo di compressione z (in questo caso gzip), v per la modalità dettagliata che fornisce informazioni su ciò che sta facendo, ef per indicare il file con cui lavorare ... Bene, se lo cambiamo z con un'altra lettera corrispondente a un altro tipo di algoritmo possiamo modificare il tipo di compressione applicato al tarball:
opzione | Algoritmo | Estensione |
---|---|---|
z | gzip | .tar.gz |
j | bzip2 | .tar.bz2 |
J | xz | .tar.xz |
lzip | chiusura | .tar.z |
lzma | lzma | .tar.lzma |
* Ovviamente tutti i comandi precedenti hanno opzioni interessanti che ti invito a scoprire usando man, alcune molto necessarie come la ricorsione, ecc.
Non dimenticare lascia i tuoi commenti...
In particolare uso 7zip
Ti sei perso 7zip. Un'ottima opzione e SOFTWARE GRATUITO.
Ottima informazione, anche se avrei iniziato dicendo che può essere anche compresso e decompresso graficamente senza alcun problema in modo da non vedere il "calabrone" del momento che dice che GNU / Linux è molto difficile e tutto deve essere fatto sulla console. NO, È UN'ALTRA OPZIONE.