Съществуват редица различни начини за компресиране на файлове чрез командния ред на Linux. Тази статия включва практически примери, които показват как да използвате командата zip, за да компактирате и организирате файлове във вашата файлова система.
Звуковите файлове се използват, когато трябва да спестите място и да копирате големи файлове от едно място на друго.
Ако имате 10 файла с размер 100 мегабайта и трябва да ги прехвърлите на ftp сайт, прехвърлянето може да отнеме значително време в зависимост от скоростта на процесора.
Ако компресирате всичките 10 файла в един компресиран архив и компресията намалява размера на файла до 50MB на файл, тогава трябва само да прехвърлите половината от данните.
Как да създадете архив на всички файлове в папка
Представете си, че имате папка с песни със следните MP3 файлове в него:
Night Prowler.mp3 |
Любовта гладен мъж.mp3 |
Get It Hot.mp3 |
Разходка из теб.mp3 |
Highway to hell.mp3 |
Ако искаш кръв, ти го имаш.mp3 |
Show in flames.mp3 |
Докоснете твърде много.mp3 |
Побой около буш.mp3 |
Girls Got Rhythm.mp3 |
Тази проста Linux команда, която илюстрира как да създадете архив на всички файлове в текущата папка, наречена ACDC_Highway_to_Hell.zip:
zip ACDC_Highway_to_Hell *
Текстът се превърта на екрана, показвайки файловете, докато се добавят.
Как да включите скрити файлове в архив
Предишната команда е добре за архивиране на всички файлове в папка, но тя включва само файлове, които не са скрити.
Това не винаги е толкова просто. Представете си, че искате да компресирате своята домашна папка, така че да можете да я архивирате на USB устройство или външен твърд диск. Домашната ви папка включва скрити файлове.
За да компресирате всички файлове, включително скритите файлове в папка, изпълнете следната команда:
zip home *. *
Това създава файл, наречен home.zip, с всички файлове в домашната папка.
(Трябва да сте в домашната папка, за да работи това). Проблемът с тази команда е, че тя включва само файловете в домашната папка, а не папките, което ни води до следващия пример.
Как да архивирате всички файлове и подпапки в Zip файл
За да включите всички файлове и подпапки в архив, изпълнете следната команда:
zip -r home.
Как да добавите нови файлове към съществуващ архив с ZIP файлове
Ако искате да добавите нови файлове към съществуващ архив или да актуализирате файловете в архив, използвайте същото име за архивния файл, когато стартирате командата zip.
Например, представете си, че имате музикална папка с четири албума в нея и създавате архив, наречен music.zip, който да се съхранява като резервно копие. Представете си, че една седмица по-късно изтеглите два нови албума. За да добавите новите албуми в zip файла, просто изпълнете същата команда на zip, както и предишната седмица.
За да създадете оригиналния музикален архив, изпълнете следния код:
zip -r музика / начало / име / музика /
За да добавите нови файлове към архива, изпълнете отново същата команда.
Ако zip файлът има списък с файлове в него и един от файловете на диска се е променил, промененият файл се актуализира в zip файла.
Как да актуализирате съществуващите файлове в архив с ZIP
Ако имате zip файл, за който се предполага, че съдържат едно и също име на файл всеки път и искате да актуализирате този файл с промените, които са направени към тези файлове, то тогава -f превключвател ви помага да направите това.
Например, представете си, че имате компресиран файл със следните файлове:
/ Начало / YourName / документи / ФАЙЛ_1 |
/ Начало / YourName / документи / ФАЙЛ_2 |
/ Начало / YourName / документи / file3 |
/ Начало / YourName / документи / файл4 |
/ Начало / YourName / документи / file5 |
/ Начало / YourName / документи / file6 |
Сега си представете, че през седмицата добавихте два нови файла и промените два файла, така че папката / home / yourname / documents сега изглежда така:
/ Начало / YourName / документи / ФАЙЛ_1 |
/ Начало / YourName / документи / ФАЙЛ_2 |
/ Начало / YourName / документи / file3 |
/ home / yourname / documents / file4 (актуализиран) |
/ home / yourname / documents / file5 (актуализиран) |
/ Начало / YourName / документи / file6 |
/ Начало / YourName / документи / file7 |
/ Начало / YourName / документи / file8 |
Когато изпълнявате следната команда, zip файлът ще съдържа актуализираните файлове (file4 и file5), но file7 и file8 няма да бъдат добавени.
zip zipfilename -f -r / home / yourname / documents
Как да изтриете файлове от
Така че създадохте масивен файл с цип със стотици файлове и сега осъзнавате, че в ZIP файла има четири или пет файла, от които не се нуждаете там. Без да се налага да цитирате всички тези файлове отново, можете просто да стартирате командата zip с -д превключете както следва:
zip zipfilename -d име на файла в архива
Например, ако имате файл в архива с името home / documents / test.txt, изтривате го с тази команда:
zip zipfilename -d начало / документи / test.txt
Как да копирате файлове от един Zip файл на друг
Ако имате файлове в един пощенски файл и искате да ги копирате в друг пощенски файл, без да ги изваждате първо и да ги изрязвате, използвайте -u ключ.
Да предположим, че имате zip файл, наречен "variousmusic.zip", с музика от различни изпълнители, един от които е AC / DC. Можете да копирате AC / DC песни от variousmusic.zip файла във вашия ACDC.zip файл, като използвате следната команда:
zip variousmusic.zip -U - out ACDC.zip "Back_In_Black.mp3"
Горната команда копира файла "Back_In_Black.mp3" от variousmusic.zip на ACDC.zip.Ако файлът ZIP, с който копирате, не съществува, той е създаден.
Как да използваме съвпадение на шаблони и тръбопроводи за създаване на архив
Следващият превключвател е наистина полезен, защото ви позволява да използвате изхода на други команди, за да вмъкнете файлове във вашия zip файл. Да предположим, че искате да създадете файл, наречен lovesongs.zip, който съдържа всяка песен, която има думата любов в заглавието.
За да намерите файловете с любов в заглавието, можете да използвате следната команда:
find / home / yourname / Музика-име * любов *
Горната команда не е 100% перфектна, защото взима думи като "детелина", но вие получавате идеята. За да добавите всички върнати резултати от горната команда към zip файл, наречен lovesongs.zip, изпълнете тази команда:
find / начало / име / музика-име * любов * | zip lovesongs.zip - @
Как да създадете архив за разделяне
Ако архивирате компютъра си, но единственият носител, с който разполагате за създаване на резервни копия, е набор от празни DVD дискове, имате възможност за избор. Можете да запазите цирковете на файлове, докато zip файлът е 4,8 гигабайта и да запишете DVD, или можете да създадете нещо, наречено разделен архив, който продължава да създава нови архиви в комплект, след като достигне ограничението, което сте посочили.
Например:
zip mymusic.zip -r / home / myfolder / Музика-на 670 метра
Как да персонализирате доклада за напредъка на процеса на ципиране
Има различни начини за персонализиране на изхода, който се появява, докато ципирането е в ход.
Наличните ключове са както следва:
- -db = показва колко байта са компресирани и колко са оставени да отидат
- -dc = Показва броя на файловете с компресирани файлове и колко остават
- -dd = Показва точки за всеки 10MB файл, който е с цип
- -ds = определя колко често се появяват точки
- -du = показва некомпресирания размер на всеки файл
Например:
zip myzipfilename.zip -dc -r / home / музика
Как да се определи Zip файл
Ако имате zip архив, който е счупен, можете да опитате да го коригирате с помощта на -F команда и ако това не успее, FF команда.
Това е полезно, ако сте създали разделен архив с помощта на -с превключвате и сте загубили един от архивните файлове.
Например първо изпробвайте това:
zip -F myfilename.zip - изход myfixedfilename.zip
и тогава
zip -FF myfilename.zip - изход myfixedfilename.zip
Как да шифровате архив
Ако имате чувствителна информация, която искате да съхраните в zip файл, използвайте -Д команда да го кодира. Ще бъдете помолени да въведете парола и да повторите паролата.
Например:
zip myfilename.zip -r / home / wikileaks -e
Как да се покаже какво ще бъде компресирано
Ако знаете, че ще създадете голям архив, уверете се, че правилните файлове ще бъдат добавени към zip файла. Можете да видите очакваните резултати от командата zip като посочите -SF ключ.
Например:
zip myfilename.zip -r / home / музика / -sf
Как да тествате архив
След като направите резервно копие на файлове в zip файл, е примамливо да спестите място на диска, като изтриете оригиналните файлове. Преди да направите това, добра идея е да тествате файла с цип, който работи правилно.
Можете да използвате -T преминете, за да проверите дали zip файлът е валиден.
Например:
zip myfilename.zip -T
Резултатът от тази команда, когато даден архив е невалиден, може да изглежда като:
- zip предупреждение: липсващ край на подписа - вероятно не е zip файл
Запомнете, че можете да опитате командата -F, за да поправите счупени zip файлове.
Струва си да се отбележи, че -Т може да доведе до фалшиви позитиви, тъй като той казва, че zip файлът е повреден, въпреки че когато го отворите, можете да извлечете всички файлове.
Как да изключите файлове
Понякога искате да изключите определени файлове от zip файл. Например, ако копирате файловете от вашия телефон или цифров фотоапарат, имате смесица от видеоклипове и изображения. Може би желаете да компресирате снимките към photos.zip и видео към videos.zip.
Ето един начин да изключите видеоклиповете при създаването на photos.zip
zip photos.zip -r / home / снимки / -x * .mp4
Как да зададете ниво на компресия
Когато компресирате файлове в zip файл, системата решава дали да компресира файла или просто да го съхрани. MP3 файлове, например, вече са компресирани, така че няма смисъл да ги компресирате допълнително; те обикновено се съхраняват, както е в zip файл.
Можете обаче да зададете ниво на компресия между 0 и 9, за да компресирате файл по-нататък. Това отнема повече време, но може да се постигне значително спестяване на пространство.
zip myfiles.zip -r / home -5