Συμπίεση και αποσυμπίεση αρχείων χρησιμοποιώντας gzip και bzip2

για το gzip και το bzip2

Στο επόμενο άρθρο θα ρίξουμε μια ματιά στο πώς zip και unzip αρχεία χρησιμοποιώντας gzip και bzip2. Η συμπίεση είναι πολύ χρήσιμη κατά τη δημιουργία αντιγράφων ασφαλείας σημαντικών αρχείων ή την αποστολή μεγάλων αρχείων μέσω του Διαδικτύου. Σήμερα υπάρχουν πολλά προγράμματα για συμπίεση και αποσυμπίεση αρχείων στο GNU / Linux.

Ένας συνάδελφος μας είπε ήδη για μερικά από αυτά προγράμματα όπως σπάνιος y zip σε αυτό το ίδιο ιστολόγιο. Σε αυτό το σεμινάριο, θα ρίξουμε μια ματιά σε δύο από αυτά μόνο, όπως το gzip και το bzip2. Όπως λέω, ας δούμε πώς να τα χρησιμοποιήσουμε για να συμπιέσουμε και να αποσυμπιέσουμε αρχεία με μερικά παραδείγματα στο Ubuntu.

Συμπίεση και αποσυμπίεση αρχείων χρησιμοποιώντας gzip και bzip2

Το πρόγραμμα gzip

Gzip είναι ένα βοηθητικό πρόγραμμα για τη συμπίεση και αποσυμπίεση αρχείων χρησιμοποιώντας το Αλγόριθμος κωδικοποίησης Lempel-Ziv (LZ77).

  • Συμπίεση αρχείων

Για να συμπιέσετε ένα αρχείο με το όνομα ubunlog.κείμενο, αντικαθιστώντας το με μια συμπιεσμένη έκδοση, θα εκτελέσουμε στο τερματικό (Ctrl + Alt + T):

συμπίεση και αποσυμπίεση αρχείων με gzip

gzip ubunlog.txt

Το Gzip θα αντικαταστήσει το αρχικό αρχείο που ονομάζεται ubunlog.txt από μια συμπιεσμένη έκδοση που ονομάζεται ubunlog.txt.gz.

Η εντολή gzip μπορεί επίσης να χρησιμοποιηθεί με άλλους τρόπους. Ένα καλό παράδειγμα είναι ότι μπορούμε δημιουργήστε μια συμπιεσμένη έκδοση της εξόδου μιας συγκεκριμένης εντολής. Κοιτάξτε την ακόλουθη εντολή.

gzip compress ls έξοδος

ls -l ../../Descargas / | gzip > ubunlog.txt.gz

Η παραπάνω εντολή δημιουργεί μια συμπιεσμένη έκδοση της λίστας αρχείων στο φάκελο "Λήψεις".

  • Συμπίεση και αποσυμπίεση διατηρώντας το αρχικό αρχείο

Από προεπιλογή, το πρόγραμμα gzip θα συμπιεστεί το δεδομένο αρχείο, αντικαθιστώντας το με μια συμπιεσμένη έκδοση. Ωστόσο, μπορούμε να διατηρήσουμε το αρχικό αρχείο και να γράψουμε το αποτέλεσμα στην τυπική έξοδο. Για παράδειγμα, η ακόλουθη εντολή, συμπίεση ubunlog.txt και γράψτε το αποτέλεσμα στο output.txt.gz.

gzip compress μετατροπή αρχείου gzip

gzip -c ubunlog.txt > salida.txt.gz

Με τον ίδιο τρόπο, μπορούμε αποσυμπιέστε ένα συμπιεσμένο αρχείο καθορίζοντας το όνομα του αρχείου εξόδου:

αρχείο συντήρησης συμπίεσης gzip

gzip -c -d salida.txt.gz > ubunlog1.txt

Η παραπάνω εντολή αποσυμπιέζει το αρχείο output.txt.gz και εγγράφει το αποτέλεσμα στο αρχείο ubunlog1.txt. Στις δύο προηγούμενες περιπτώσεις, το αρχικό αρχείο δεν θα διαγραφεί.

  • Αποσυμπιέστε αρχεία

Για να αποσυμπιέσετε το αρχείο ubunlog.txt.gz, αντικαθιστώντας το με την αρχική μη συμπιεσμένη έκδοση, θα χρησιμοποιήσουμε την ακόλουθη εντολή στο τερματικό (Ctrl + Alt + T):

Αποσυμπιέστε το αρχείο gzip

gzip -d ubunlog.txt.gz

Μπορούμε επίσης να χρησιμοποιήσουμε το gunzip για να αποσυμπιέσετε τα αρχεία.

Αποσυμπιέστε το αρχείο gunzip

gunzip ubunlog.txt.gz
  • Δείτε τα περιεχόμενα των συμπιεσμένων αρχείων χωρίς να τα αποσυμπιέσετε

Για να δείτε τα περιεχόμενα του συμπιεσμένου αρχείου χωρίς να το αποσυμπιέσετε χρησιμοποιώντας το gzip, θα χρησιμοποιήσουμε την επιλογή -c όπως φαίνεται στα ακόλουθα:

gunzip -c προβολή περιεχομένου συμπιεσμένων αρχείων

gunzip -c ubunlog1.txt.gz

Μπορούμε επίσης να χρησιμοποιήσουμε το βοηθητικό πρόγραμμα zcat για τον ίδιο σκοπό, όπως παρακάτω:

zcat προβολή περιεχομένου συμπιεσμένου αρχείου

zcat ubunlog.txt.gz

Θα είμαστε σε θέση διοχετεύστε την έξοδο χρησιμοποιώντας την εντολή "λιγότερο" για να δείτε τη σελίδα εξόδου ανά σελίδα όπως φαίνεται παρακάτω:

gunzip -c ubunlog.txt.gz | less

Η λιγότερη εντολή μπορεί επίσης να χρησιμοποιηθεί με zcat:

zcat ubunlog.txt.gz | less

Θα έχουμε επίσης την επιλογή να χρησιμοποιήσουμε το πρόγραμμα zless. Αυτό εκτελεί την ίδια λειτουργία με τους προηγούμενους σωλήνες:

zless ubunlog.txt.gz

Μπορούμε έξοδος σελιδοποίησης πατώντας το πλήκτρο q.

  • Συμπίεση του αρχείου με gzip καθορίζοντας το επίπεδο συμπίεσης

Ένα άλλο πλεονέκτημα που πρέπει να θυμάστε είναι το gzip υποστηρίζει επίπεδο συμπίεσης. Υποστηρίζει 3 επίπεδα συμπίεσης όπως παρακάτω.

1 - Ταχύτερη (χειρότερα)
9 - πιο αργό (mejor)
6 - Προεπιλεγμένο επίπεδο

Για να συμπιέσετε το αρχείο με το όνομα ubunlog.txt, αντικαθιστώντας το με ένα συμπιεσμένη έκδοση με το καλύτερο επίπεδο συμπίεσης, θα το χρησιμοποιησουμε:

gzip -9 ubunlog.txt
  • Συνδυάστε πολλά συμπιεσμένα αρχεία

Μια άλλη πιθανότητα που μας προσφέρει το gzip είναι αυτή του συνενώστε πολλά συμπιεσμένα αρχεία σε ένα. Μπορούμε να το κάνουμε με τον ακόλουθο τρόπο:

gzip -c ubunlog1.txt > salida.txt.gz

gzip -c ubunlog2.txt >> salida.txt.gz

Οι παραπάνω δύο εντολές θα συμπιεστούν ubunlog1.txt και ubunlog2.txt και αποθηκεύστε τα σε ένα μόνο αρχείο που ονομάζεται output.txt.gz.

Μπορούμε δείτε τα περιεχόμενα των αρχείων (ubunlog1 .txt και ubunlog1.txt) χωρίς την εξαγωγή τους χρησιμοποιώντας οποιαδήποτε από τις ακόλουθες εντολές:

gunzip -c salida.txt.gz

gunzip -c salida.txt

zcat salida.txt.gz

zcat salida.txt

Για περισσότερες λεπτομέρειες σχετικά με το gzip, ανατρέξτε στο ανθρώπινες σελίδες:

άντρας gzip

man gzip

Το πρόγραμμα bzip2

El bzip2 είναι πολύ παρόμοιο με το πρόγραμμα gzip. Η κύρια διαφορά είναι ότι χρησιμοποιεί έναν διαφορετικό αλγόριθμο συμπίεσης που ονομάζεται Burrows-Wheeler αλγόριθμος συμπίεσης κειμένου ταξινόμησης μπλοκ και κωδικοποίηση Huffman. Τα αρχεία που συμπιέζονται με το bzip2 θα τελειώσουν με την επέκταση .bz2.

Όπως είπα, η χρήση του bzip2 είναι σχεδόν το ίδιο με το gzip. Απλά θα πρέπει αντικαταστήστε το gzip στα παραπάνω παραδείγματα με bzip2, gunzip με bunzip2, zcat με bzcat και ούτω καθεξής.

  • Συμπίεση αρχείων

Για να συμπιέσετε ένα αρχείο χρησιμοποιώντας το bzip2, αντικαθιστώντας το με μια συμπιεσμένη έκδοση, θα εκτελέσουμε:

αρχείο συμπίεσης bzip2

bzip2 ubunlog.txt
  • Συμπιέστε τα αρχεία χωρίς να διαγράψετε το αρχικό αρχείο

Εάν δεν θέλουμε να αντικαταστήσουμε το αρχικό αρχείο, θα χρησιμοποιήσουμε το -c επιλογή και θα γράψουμε το αποτέλεσμα σε ένα νέο αρχείο.

bzip2 συμπίεση αρχείο διατήρησης

bzip2 -c ubunlog.txt > salida.txt.bz2
  • Αποσυμπιέστε αρχεία

να αποσυμπιέστε ένα αρχείο συμπιεσμένο θα χρησιμοποιήσουμε μία από τις ακόλουθες δύο δυνατότητες:

bzip2 -d ubunlog.txt.bz2

bunzip2 ubunlog.txt.bz2
  • Δείτε τα περιεχόμενα των συμπιεσμένων αρχείων χωρίς να τα αποσυμπιέσετε

Για να δούμε το περιεχόμενο ενός συμπιεσμένου αρχείου χωρίς να το αποσυμπιέσουμε, θα πρέπει μόνο να χρησιμοποιήσουμε οποιαδήποτε από τις επιλογές:

bunzip2 -c ubunlog.txt.bz2

bzcat ubunlog.txt.bz2

Για περισσότερες λεπτομέρειες, μπορείτε να συμβουλευτείτε το ανθρώπινες σελίδες:

άντρας bzip2

man bzip2

Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.