במאמר הבא נבחן כיצד zip וקובץ zip של קבצים באמצעות gzip ו- bzip2. דחיסה שימושית מאוד כאשר מגבים קבצים חשובים או שולחים קבצים גדולים דרך האינטרנט. כיום ישנן תוכניות רבות לדחיסת קבצים ב- GNU / Linux וירידורן בהן.
עמית כבר סיפר לנו על כמה כאלה תוכניות כמו rar y zip באותו בלוג. במדריך זה, אנו נסתכל על שניים מהם בלבד, כגון gzip ו- bzip2. כפי שאמרתי, בואו נראה איך להשתמש בהם בכדי לדחוס קבצים עם כמה דוגמאות באובונטו ולפרוס אותן.
דחוס ודחוס קבצים באמצעות gzip ו- bzip2
תוכנית ה- gzip
Gzip הוא כלי עזר לדחיסה ולחיצה על קבצים באמצעות אלגוריתם קידוד למפל-זיו (LZ77).
-
דחוס קבצים
כדי לדחוס קובץ בשם ubunlog.טקסט, החלפתו בגרסה דחוסה, נבצע במסוף (Ctrl + Alt + T):
gzip ubunlog.txt
Gzip יחליף את הקובץ המקורי קרא ubunlog.txt על ידי גרסה דחוסה בשם ubunlog.txt.gz.
ניתן להשתמש בפקודה gzip גם בדרכים אחרות. דוגמה טובה היא שאנחנו יכולים צור גרסה דחוסה של הפלט של פקודה ספציפית. עיין בפקודה הבאה.
ls -l ../../Descargas / | gzip > ubunlog.txt.gz
הפקודה לעיל יוצרת גרסה דחוסה של רשימת הקבצים בתיקיית ההורדות.
-
דחוס ושחרר דחיסה תוך שמירה על הקובץ המקורי
כברירת מחדל, תוכנית gzip תידחס את הקובץ הנתון, ולהחליפו בגרסה דחוסה. עם זאת, נוכל לשמור את הקובץ המקורי ולכתוב את התוצאה לפלט סטנדרטי. לדוגמה, הפקודה הבאה, דחיסה ubunlog.txt וכתוב את התוצאה ל-output.txt.gz.
gzip -c ubunlog.txt > salida.txt.gz
באותו אופן, אנחנו יכולים לפתוח קובץ דחוס ציון שם קובץ הפלט:
gzip -c -d salida.txt.gz > ubunlog1.txt
הפקודה לעיל פותחת את הקובץ output.txt.gz וכותבת את התוצאה לקובץ ubunlog1.txt. בשני המקרים הקודמים, הקובץ המקורי לא יימחק.
-
פתח את הקבצים
כדי לפתוח את הקובץ ubunlog.txt.gz, החלפתו בגרסה הלא דחוסה המקוריתנשתמש בפקודה הבאה במסוף (Ctrl + Alt + T):
gzip -d ubunlog.txt.gz
אנחנו יכולים גם להשתמש באקדח כדי לפתוח את הקבצים.
gunzip ubunlog.txt.gz
-
צפה בתוכן של קבצים דחוסים מבלי לדחוס אותם מחדש
כדי להציג את תוכן הקובץ הדחוס מבלי לדחוס אותו באמצעות gzip, נשתמש באפשרות -c כפי שמוצג בדברים הבאים:
gunzip -c ubunlog1.txt.gz
אנחנו יכולים גם להשתמש ב- כלי 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, החלפתו ב-a גרסה דחוסה עם רמת הדחיסה הטובה ביותר, אנחנו נשתמש:
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, עיין ב דפי גבר:
man gzip
תוכנית bzip2
El bzip2 זה דומה מאוד לתוכנית ה- gzip. ההבדל העיקרי הוא שהוא משתמש באלגוריתם דחיסה שונה שנקרא אלגוריתם דחיסת טקסט של Burrows-Wheeler לחסימת סיווג וקידוד Huffman. קבצים דחוסים עם bzip2 יסתיימו בסיומת .bz2.
כמו שאמרתי, השימוש ב- bzip2 זה כמעט כמו gzip. פשוט נצטרך החלף את gzip בדוגמאות שלמעלה ב- bzip2, gunzip ב- bunzip2, zcat ב- bzcat וכן הלאה.
-
דחוס קבצים
כדי לדחוס קובץ באמצעות bzip2, החלפתו בגרסה דחוסה, נבצע:
bzip2 ubunlog.txt
-
דחיס את הקבצים מבלי למחוק את הקובץ המקורי
אם אנחנו לא רוצים להחליף את הקובץ המקורי, נשתמש ב- -אפשרות c ואנחנו נכתוב את התוצאה לקובץ חדש.
bzip2 -c ubunlog.txt > salida.txt.bz2
-
פתח את הקבצים
כדי פתח את קובץ ה- zip דחוס נשתמש באחת משתי האפשרויות הבאות:
bzip2 -d ubunlog.txt.bz2 bunzip2 ubunlog.txt.bz2
-
צפה בתוכן של קבצים דחוסים מבלי לדחוס אותם מחדש
כדי לראות את התוכן של קובץ דחוס מבלי לדחוס אותו, נצטרך להשתמש באחת מהאפשרויות בלבד:
bunzip2 -c ubunlog.txt.bz2 bzcat ubunlog.txt.bz2
לפרטים נוספים, אנו יכולים להתייעץ עם דפי גבר:
man bzip2