Nel prossimo articolo vedremo come zip e decomprimere i file utilizzando gzip e bzip2. La compressione è molto utile quando si esegue il backup di file importanti o si inviano file di grandi dimensioni su Internet. Oggi ci sono molti programmi per comprimere e decomprimere file in GNU / Linux.
Un collega ci ha già parlato di alcuni di questi programmi come raro y chiusura in questo stesso blog. In questo tutorial, daremo un'occhiata solo a due di essi, come gzip e bzip2. Come ho detto, vediamo come usarli per comprimere e decomprimere file con alcuni esempi in Ubuntu.
Comprimi e decomprimi i file usando gzip e bzip2
Il programma gzip
gzip è un'utilità per comprimere e decomprimere file utilizzando l'estensione Algoritmo di codifica Lempel-Ziv (LZ77).
-
Comprimi file
Per comprimere un file denominato ubunlog.testo, sostituendolo con una versione compressa, eseguiremo nel terminale (Ctrl + Alt + T):
gzip ubunlog.txt
Gzip sostituirà il file originale detto ubunlog.txt da una versione compressa chiamata ubunlog.txt.gz.
Il comando gzip può essere utilizzato anche in altri modi. Un buon esempio è che possiamo creare una versione compressa dell'output di un comando specifico. Guarda il seguente comando.
ls -l ../../Descargas / | gzip > ubunlog.txt.gz
Il comando precedente crea una versione compressa dell'elenco di file nella cartella Download.
-
Comprimi e decomprimi mantenendo il file originale
Per impostazione predefinita, il programma gzip comprimerà il file dato, sostituendolo con una versione compressa. Tuttavia, possiamo conservare il file originale e scrivere il risultato sullo standard output. Ad esempio, il comando seguente, compress ubunlog.txt e scrivi il risultato in output.txt.gz.
gzip -c ubunlog.txt > salida.txt.gz
Allo stesso modo, possiamo decomprimere un file compresso specificando il nome del file di output:
gzip -c -d salida.txt.gz > ubunlog1.txt
Il comando precedente decomprime il file output.txt.gz e scrive il risultato nel file ubunlog1.txt. Nei due casi precedenti, il file originale non verrà eliminato.
-
Decomprimere i file
Per decomprimere il file ubunlog.txt.gz, sostituendolo con la versione originale non compressa, useremo il seguente comando nel terminale (Ctrl + Alt + T):
gzip -d ubunlog.txt.gz
Possiamo anche usare gunzip per decomprimere i file.
gunzip ubunlog.txt.gz
-
Visualizza il contenuto dei file compressi senza decomprimerli
Per visualizzare il contenuto del file compresso senza decomprimerlo utilizzando gzip, useremo l'opzione -c come mostrato di seguito:
gunzip -c ubunlog1.txt.gz
Possiamo anche usare il file utilità zcat per lo stesso scopo, come di seguito:
zcat ubunlog.txt.gz
Saremo in grado pipe l'output utilizzando il comando "less" per visualizzare l'output pagina per pagina come mostrato di seguito:
gunzip -c ubunlog.txt.gz | less
Il comando less può essere utilizzato anche con zcat:
zcat ubunlog.txt.gz | less
Avremo anche la possibilità di utilizzare il file programma zless. Esegue la stessa funzione delle pipe precedenti:
zless ubunlog.txt.gz
Possiamo uscire dal paging premendo il tasto q.
-
Comprimi il file con gzip specificando il livello di compressione
Un altro vantaggio da tenere a mente di gzip è quello supporta il livello di compressione. Supporta 3 livelli di compressione come di seguito.
1 - Più veloce (peor)
9 - Più lento (meglio)
6 - Livello predefinito
Per comprimere il file denominato ubunlog.txt, sostituendolo con a versione compressa con il miglior livello di compressione, noi useremo:
gzip -9 ubunlog.txt
-
Concatena più file compressi
Un'altra possibilità che gzip ci offre è quella di concatena più file compressi in uno. Possiamo farlo nel modo seguente:
gzip -c ubunlog1.txt > salida.txt.gz gzip -c ubunlog2.txt >> salida.txt.gz
I due comandi precedenti verranno compressi ubunlog1.txt e ubunlog2.txt e salvarli in un unico file chiamato output.txt.gz.
Possiamo visualizzare il contenuto dei file (ubunlog1.txt e ubunlog1.txt) senza estrarli utilizzando uno dei seguenti comandi:
gunzip -c salida.txt.gz gunzip -c salida.txt zcat salida.txt.gz zcat salida.txt
Per maggiori dettagli su gzip, vedere il pagine man:
man gzip
Il programma bzip2
El bzip2 è molto simile al programma gzip. La differenza principale è che utilizza un diverso algoritmo di compressione chiamato Algoritmo di compressione del testo di classificazione dei blocchi di Burrows-Wheeler e codifica Huffman. I file compressi con bzip2 finiranno con l'estensione .bz2.
Come ho detto, usare bzip2 è più o meno lo stesso di gzip. Dovremo semplicemente sostituire gzip negli esempi precedenti con bzip2, gunzip con bunzip2, zcat con bzcat e così via.
-
Comprimi file
Per comprimere un file utilizzando bzip2, sostituendolo con una versione compressa, eseguiremo:
bzip2 ubunlog.txt
-
Comprimi i file senza eliminare il file originale
Se non vogliamo sostituire il file originale, useremo l'estensione -c opzione e scriveremo il risultato in un nuovo file.
bzip2 -c ubunlog.txt > salida.txt.bz2
-
Decomprimere i file
a decomprimere un file compresso useremo una delle seguenti due possibilità:
bzip2 -d ubunlog.txt.bz2 bunzip2 ubunlog.txt.bz2
-
Visualizza il contenuto dei file compressi senza decomprimerli
Per vedere il contenuto di un file compresso senza decomprimerlo, dovremo usare solo una delle opzioni:
bunzip2 -c ubunlog.txt.bz2 bzcat ubunlog.txt.bz2
Per maggiori dettagli, possiamo consultare il pagine man:
man bzip2