7 начина за компресиране и разархивиране на файлове в Linux

Повече и по-бързо винаги са две неща, които искаме, особено когато става въпрос за данни. Проблемът е, че „повече“ и „по-бързо“ обикновено са в противоречие, така че имаме компресия на файлове(file compression) . Има няколко начина за компресиране и разархивиране на файлове в Linux и ние ще ви покажем методите зад тях.

Zip и разархивирайте с помощта на Zip в Linux(Zip and Unzip Using Zip in Linux)

Linux има няколко инструмента за компресиране, вградени в почти всяка дистрибуция, известни като Linux дистрибуции(Linux distros) . Zip вероятно е най-популярният. Помощната програма Zip може да се използва в графичния потребителски интерфейс ( GUI ) или в терминала.

Zip в Linux GUI(Zip in the Linux GUI)

  1. Придвижете се до файловете(Navigate to the files) , които ще бъдат компресирани, и ги изберете. След това щракнете с десния бутон и изберете Компресиране(Compress) .

  1. Въведете име за компресирания(zipped) архив. Имайте предвид, че можете да изберете и два други типа компресия. Това може да варира в различните дистрибуции.

  1. Скоро ще видите своя компресиран архив. Имайте предвид, че размерът на архива е много по-малък от общия размер на файловете, поставени в него.

Разархивирайте в Linux GUI(Unzip in the Linux GUI)

  1. Намерете компресирания архив за разархивиране и щракнете с десния бутон върху него. Изберете Извличане тук(Extract Here) или Извличане в...(Extract to…) . Extra Here поставя съдържанието в тази директория. Извличане(Extract) в... ви позволява да изберете някъде другаде, за да поставите съдържанието.

Файловете се извличат. Забележете(Notice) , че те се върнаха към пълния си размер от 100 MB всеки.

Мениджър на архиви за разархивиране в Linux GUI(Archive Manager to Unzip in the Linux GUI)

Някои дистрибуции на Linux имат други начини за разархивиране, вградени в тях. В този пример можете да използвате Archive Manager .

  1. Щракнете с десния бутон(Right-click) върху архива и изберете Отвори с мениджър на архиви(Open With Archive Manager) .

  1. Маркирайте(Highlight) файловете за извличане, като щракнете с едно щракване върху тях. Можете да изберете един, няколко или всички от тях. След това изберете Извличане(Extract ) в горния ляв ъгъл.

  1. В този момент можете да изберете къде да извлечете файловете с помощта на файловия мениджър. След това изберете Извличане(Extract) в горния десен ъгъл.

  1. Когато извличането приключи, можете или да продължите, или да покажете файловете(Show the Files) .

Файлът се завръща в пълния си размер. Копие е оставено в архива.

Zip файлове в Linux терминал(Zip Files in Linux Terminal)

Отворете терминала и отидете до директорията, където се намират файловете, които трябва да се архивират. Въведете командата zip ziptest.zip *

Zip казва на Linux да използва zip помощната програма, ziptest.zip му казва желаното име за архива, asterisk (*) е заместващ знак, което означава архивиране на всички файлове в тази директория. 

Той архивира файловете, изброява ги и казва колко ги е дефлирал или компресирал.

Много действия могат да се използват с командата zip. За да ги видите, въведете zip –help и ще видите нещо като следното изображение.

Разархивирайте файлове в Linux терминал(Unzip Files in Linux Terminal)

В терминала използвайте командата unzip ziptest.zip , където unzip е командата, а ziptest.zip е името на архива за разархивиране.

Той ще покаже файловете, които се разархивират, така че да знаете кога е готово.

Подобно на командата zip, много действия могат да се използват с командата unzip. За да ги видите, въведете unzip –help и ще видите нещо като следното изображение.

Bzip2 за компресиране и разархивиране на файлове в Linux(Bzip2 for Zipping and Unzipping Files in Linux)

Bzip2 е друга помощна програма за компресиране, вградена в повечето дистрибуции на Linux . Основната разлика е, че bzip2 не може да архивира няколко файла в един архив. Всеки файл получава собствен компресиран архив.

Zip файлове в Linux терминал с Bzip2(Zip Files in Linux Terminal With Bzip2)

Въведете командата bzip2 -kv9 testfile1.txt testfile2.txt , където bzip2 е командата.

-kv9 се(-kv9 ) разпада на k означава k запазване на оригиналите, v означава v erbose, за да можем да видим какво се случва, и 9 за най-високото ниво на компресия. Можете да избирате между 1 и 9. Колкото по-високо е нивото на компресия, толкова по-дълго отнема архивирането на файловете.

Резултатът ни казва повече от zip, но крайният резултат е почти същият.

Разархивирайте файловете в Linux терминал с Bzip2(Unzip Files In Linux Terminal With Bzip2)

Въведете командата bzip2 -kvd testfile.1.txt.bz2 testfile2.txt.bz2 . Опциите -kvd(-kvd ) се разбиват като k за запазване(k) на архивите, v за v erbose изход и d за d ecompress.

Виждате как файловете се декомпресират и се знае кога е готово.

За да видите опциите на bzip2, въведете bzip2 –help и ще видите следното. Поиграйте си с опциите за некритични файлове, само за да видите какво могат да направят.

Gzip за компресиране и разархивиране на файлове в Linux(Gzip for Zipping and Unzipping Files in Linux)

Това е последната от популярните помощни програми за компресиране, които са включени в повечето дистрибуции. По-лек е от bzip2 и zip за опции. Качеството на компресията обаче е приблизително същото.

Zip файлове в Linux терминал с Gzip(Zip Files in Linux Terminal With Gzip)

Въведете командата gzip2 -kv9 testfile.1.txt testfile2.txt . Опциите -kv9(-kv9 ) се разбиват като k за запазване(k) на файловете, v за v erbose изход и 9 за най-високото ниво на компресия между 1 и 9.

Както показва подробният изход, gzip работи почти толкова добре, колкото другите методи за компресиране.

Разархивирайте файлове в Linux терминал с Gzip(Unzip Files in Linux Terminal With Gzip)

Има два начина за разархивиране на gzip архиви. Едното е да използвате gzip, а другото е gunzip.

За командата gzip използвайте gzip -kvd testfile1.txt.gz testfile2.txt.gz(gzip -kvd testfile1.txt.gz testfile2.txt.gz) . Обърнете внимание на опцията d . Това означава да декомпресираш(d) .

За командата gunzip използвайте gunzip testfile1.txt.gz testfile.2.txt.gz . Единствената разлика от gzip е, че gunzip не изисква опции за основна декомпресия.

Какво ще кажете за Tar за компресиране и разархивиране на файлове в Linux?(What About Tar to Zip and Unzip Files in Linux?)

Защо катранът(tar) все още не е споменат? Това е инструмент за архивиране, който взема куп файлове и ги поставя в един архив за лесно транспортиране. Каквито и да са размерите на файла, размерът на tar файла ще бъде приблизително същият. 

Но ако комбинирате цип метод с катран, тогава получавате нещо наистина страхотно. Получавате добре компресиран единичен пакет от файлове. 

Използвайки другите zip методи в директория с файлове, ще получите компресиран архив за всеки файл в директорията. Използването на tar с опцията gzip в директорията компресира всичко и прави един архив.

Zip файлове в Linux терминал с Tar и Gzip(Zip Files in Linux Terminal With Tar and Gzip)

Въведете командата tar -czvf Documents.tgz Документи(tar -czvf Documents.tgz Documents)

Опциите -czvf(-czvf ) се разбиват като c за c създава нов архив, z за компресиране с g z ip, v за v erbose изход и f за файл е(f) равно на архив, което означава, че архивът поддържа файловата структура на оригиналната директория. 

Новият архив трябва да бъде наречен, което в този пример е Documents.tgz . Използвайки разширението на файла .tgz , другите ще знаят, че това е tar архив, който е бил gzip. (.tgz )Накрая Documents е директорията за архивиране и компресиране.

Резултатът изглежда по следния начин.

Във File Manager можете да видите tar архива и че е компресиран.

Разархивирайте файлове в терминал на Linux с Tar и Gzip(Unzip Files in Linux Terminal With Tar and Gzip)

За да разархивирате gzip tar архив, това е същата команда tar с малко различни опции. 

Въведете командата tar -xzvf Documents.tgz Documents

Опциите -xzvf се разграждат като x за e x tract(-xzvf) , z за разархивиране с g z ip , v за многословен, за да можем да наблюдаваме как се случва, а f за file=archive означава запазване на файловата структура. Documents.tgz е архивът, който трябва да бъде разопакован и разархивиран, а Documents е директорията, в която искате да влезе съдържанието.

Резултатите са показани на изображението по-долу. Двата файла се връщат в пълен размер и са в директорията Документи(Documents) .

За да видите опциите за tar, въведете tar –help и ще получите няколко страници с опции. Обърнете внимание(Notice) , че има различни методи на zip, различни от gzip, така че можете да изберете този, който харесвате.

По-малко популярни Zip инструменти в Linux(Less Popular Zip Tools in Linux)

В повечето дистрибуции на Linux има още две помощни програми за компресиране . Те обаче не са толкова популярни. Въпреки това те са изброени тук, така че сте наясно с тях.

LZMA

LZMA е друга помощна програма за компресиране на командния ред, която често се среща в дистрибутите на Linux . Това е алгоритъмът за компресия, използван от 7-Zip.

XZ

Помощната програма XZ е инструмент за компресиране на командния ред, който често се включва в дистрибутите на Linux . Неговите опции са подобни на тези на bzip2. Базиран е на алгоритъма LZMA2 , който се основава на LZMA .

Повече информация за тези помощни програми можете да намерите с помощта на командите lzma –help и xz –help .

Няма ли други начини за компресиране и разархивиране в Linux?(Aren’t There Other Ways To Zip and Unzip in Linux?)

Отидохме само в инструментите за компресиране, вградени в повечето дистрибуции на Linux . Все пак Linux има няколко други начина за компресиране и разархивиране на файлове. Някои имат GUI(GUIs) , други са помощни програми от командния ред, а някои могат да се използват както с техния GUI, така и чрез командния ред. Използвате ли някой от тези zip инструменти в Linux ? Коя(Which one) е любимата ви и защо? Уведомете ни в коментарите.



About the author

Аз съм компютърен професионалист с над 10 години опит. В свободното си време обичам да помагам на бюрото в офиса и да уча децата как да използват интернет. Моите умения включват много неща, но най-важното е, че знам как да помагам на хората да решават проблеми. Ако имате нужда от някой, който може да ви помогне с нещо спешно или просто искате някои основни съвети, моля, свържете се с мен!



Related posts