Există o serie de moduri diferite de a comprima fișiere utilizând linia de comandă Linux. Acest articol include exemple practice care arată modul de utilizare a comenzii zip pentru compactarea și organizarea fișierelor din sistemul dvs. de fișiere.
Fișierele zip sunt utilizate atunci când trebuie să economisiți spațiu și să copiați fișiere mari dintr-un loc în altul.
Dacă aveți 10 fișiere care au toate dimensiunile de 100 megaocteți și trebuie să le transferați pe un site ftp, transferul ar putea dura o perioadă considerabilă de timp, în funcție de viteza procesorului.
Dacă comprimați toate cele 10 fișiere într-o singură arhivă de pe zip și compresia reduce dimensiunea fișierului la 50MB per fișier, atunci trebuie să transferați numai jumătate de date.
Cum se creează o arhivă a tuturor fișierelor dintr-un dosar
Imaginați-vă că aveți un dosar cu melodii cu următoarele fișiere MP3 în el:
Night Prowler.mp3 |
Love man foame.mp3 |
Get It Hot.mp3 |
Mergi peste tine.mp3 |
Highway to hell.mp3 |
Dacă vrei sânge, o ai .mp3 |
Show in flames.mp3 |
Atingeți prea mult.mp3 |
Bate în jurul bush.mp3 |
Girls Got Rhythm.mp3 |
Această comandă simplă Linux care ilustrează modul de creare a unei arhive a tuturor fișierelor din dosarul curent denumit ACDC_Highway_to_Hell.zip:
zip ACDC_Highway_to_Hell *
Textul derulează în sus pe ecran care arată fișierele în timp ce acestea sunt adăugate.
Cum să includem fișiere ascunse într-o arhivă
Comanda anterioară este bună pentru arhivarea tuturor fișierelor dintr-un dosar, dar include numai fișiere care nu sunt ascunse.
Nu este întotdeauna atât de simplu. Imaginați-vă că ați vrut să vă zip folderul de acasă, astfel încât să puteți să-l susține pe o unitate USB sau hard disk extern. Dosarul dvs. de acasă include fișiere ascunse.
Pentru a comprima toate fișierele, inclusiv fișierele ascunse într-un dosar, executați următoarea comandă:
zip acasă *. *
Acest lucru creează un fișier numit home.zip cu toate fișierele din dosarul de domiciliu.
(Trebuie să fiți în dosarul de acasă pentru ca aceasta să funcționeze). Problema cu această comandă este că include doar fișierele din dosarul de domiciliu și nu folderele, ceea ce ne aduce la următorul exemplu.
Cum se arhiva toate fișierele și subfolderele într-un fișier zip
Pentru a include toate fișierele și subdosarele dintr-o arhivă, executați următoarea comandă:
zip -r acasă.
Cum se adaugă fișiere noi într-o arhivă cu fișiere existente
Dacă doriți să adăugați fișiere noi într-o arhivă existentă sau să actualizați fișierele dintr-o arhivă, utilizați același nume pentru fișierul de arhivă atunci când executați comanda zip.
De exemplu, imaginați-vă că aveți un dosar de muzică cu patru albume în el și creați o arhivă numită music.zip pentru a păstra ca o copie de rezervă. Imaginați-vă acum o săptămână că descărcați două albume noi. Pentru a adăuga noile albume în fișierul zip, executați pur și simplu aceeași comandă zip ca și în săptămâna anterioară.
Pentru a crea arhiva muzicală originală executați următorul cod:
zip -r muzică / home / yourname / music /
Pentru a adăuga fișiere noi în arhivă, executați din nou aceeași comandă.
Dacă fișierul zip are o listă de fișiere în el și unul dintre fișierele de pe disc sa schimbat, atunci fișierul modificat este actualizat în fișierul zip.
Cum se actualizează fișierele existente într-o arhivă pe fișier
Dacă aveți un fișier zip care ar trebui să conțină aceleași nume de fișiere de fiecare dată și doriți să actualizați acel fișier cu orice modificări care au fost făcute acelor fișiere, atunci -f comutatorul vă ajută să faceți acest lucru.
De exemplu, imaginați-vă că aveți un fișier comprimat cu următoarele fișiere:
/ Home / yourname / documente / fișier1 |
/ Home / yourname / documente / fișier2 |
/ Home / yourname / documente / file3 |
/ Home / yourname / documente / file4 |
/ Home / yourname / documente / file5 |
/ Home / yourname / documente / file6 |
Acum, imaginați-vă că în timpul săptămânii ați adăugat două fișiere noi și ați modificat două fișiere, astfel încât dosarul / home / yourname / documents acum arată astfel:
/ Home / yourname / documente / fișier1 |
/ Home / yourname / documente / fișier2 |
/ Home / yourname / documente / file3 |
/ home / yourname / documents / file4 (actualizat) |
/ home / yourname / documents / file5 (actualizat) |
/ Home / yourname / documente / file6 |
/ Home / yourname / documente / file7 |
/ Home / yourname / documente / file8 |
Când executați următoarea comandă, fișierul zip va conține fișierele actualizate (fișierul 4 și fișierul5), dar fișierul 7 și fișierul 8 nu vor fi adăugate.
zip zipfilename -f -r / home / nume / documente
Cum să ștergeți fișierele dintr-o arhivă pe fișier
Deci, ați creat un fișier masiv de zip cu sute de fișiere și acum realizați că există patru sau cinci fișiere în fișierul zip pe care nu aveți nevoie de acolo. Fără a mai fi nevoie să compilați din nou toate aceste fișiere, puteți rula comanda zip cu -d comutați după cum urmează:
zip zipfilename -d numele fișierului în arhivă
De exemplu, dacă aveți un fișier în arhivă cu numele home / documents / test.txt, îl ștergeți cu această comandă:
zip zipfilename -d acasă / documente / test.txt
Cum se copiază fișierele dintr-un fișier zip către altul
Dacă aveți fișiere într-un fișier zip și doriți să le copiați într-un alt fișier zip fără a le extrage mai întâi și a le rupe, utilizați -u intrerupator.
Să presupunem că aveți un fișier zip numit "variousmusic.zip" cu muzică de la diverși artiști, dintre care unul este AC / DC. Puteți copia melodiile AC / DC din fișierul variousmusic.zip în fișierul ACDC.zip utilizând următoarea comandă:
zip variousmusic.zip -U - out ACDC.zip "Back_In_Black.mp3"
Comanda de mai sus copiază fișierul "Back_In_Black.mp3" de la variousmusic.zip la ACDC.zip.Dacă fișierul zip cu care copiați nu există, acesta este creat.
Cum se utilizează potrivirea modelelor și conducerea pentru a crea o arhivă
Următorul switch este unul foarte util, deoarece vă permite să utilizați ieșirea altor comenzi pentru a insera fișiere în fișierul zip. Să presupunem că doriți să creați un fișier numit lovesongs.zip, care conține fiecare melodie care are cuvântul dragoste în titlu.
Pentru a găsi fișierele cu dragoste în titlu puteți folosi următoarea comandă:
find / home / numele tău / Music -name * love *
Comanda de mai sus nu este 100% perfectă, deoarece prelucrează cuvinte precum "trifoi", dar obțineți ideea. Pentru a adăuga toate rezultatele returnate din comanda de mai sus într-un fișier zip numit lovesongs.zip, executați această comandă:
find / home / numele tău / Music -name * love * | zip lovesongs.zip - @
Cum se creează o arhivă separată
Dacă copiați copii de rezervă ale computerului dvs., dar singurul suport pe care îl aveți la dispoziție pentru copierea de rezervă este un set de DVD-uri goale, atunci aveți posibilitatea de a alege. Aveți posibilitatea să păstrați fișierele zipping până când fișierul zip este de 4,8 gigaocteți și ardeți DVD-ul sau puteți crea ceva numit arhivă divizată care continuă să creeze noi arhive într-un set după ce atinge limita pe care o specificați.
De exemplu:
zip mymusic.zip -r / home / myfolder / Muzică-s 670m
Cum să particularizați raportul de progres al procesului de zipare
Există mai multe moduri de personalizare a ieșirii care apare în timp ce zipping-ul este în desfășurare.
Comutatoarele disponibile sunt următoarele:
- -db = afișează câți octeți au fost atașați și câte sunt lăsați să meargă
- -dc = afișează un număr de fișiere zip și câte sunt lăsate să meargă
- -dd = afișează puncte pentru fiecare 10MB de fișier care are zip
- -ds = stabilește cât de des apar puncte
- -du = afișează dimensiunea necomprimată a fiecărui fișier
De exemplu:
zip myzipfilename.zip -dc -r / home / muzică
Cum de a repara un fișier zip
Dacă aveți o arhivă zip care este defectă, puteți încerca să o remediați utilizând -F comanda și dacă aceasta nu reușește, FF comanda.
Acest lucru este util dacă ați creat o arhivă împărțită folosind -s comutați și ați pierdut unul dintre fișierele de arhivă.
De exemplu, încercați mai întâi acest lucru:
zip -F myfilename.zip -out myfixedfilename.zip
și apoi
zip -FF myfilename.zip -out myfixedfilename.zip
Cum se criptează o arhivă
Dacă aveți informații delicate pe care doriți să le stocați într-un fișier zip, utilizați -e să-l cripteze. Vi se cere să introduceți o parolă și să repetați parola.
De exemplu:
zip myfilename.zip -r / home / wikileaks -e
Cum se afișează ce va fi pe zip
Dacă știți că veți crea o arhivă mare, asigurați-vă că fișierele corecte vor fi adăugate în fișierul zip. Puteți vedea rezultatele așteptate ale unei comenzi zip specificând -sf intrerupator.
De exemplu:
zip myfilename.zip -r / home / muzică / -sf
Cum se testează o arhivă
După copierea de rezervă a fișierelor într-un fișier zip, este tentant să economisiți spațiu pe disc prin ștergerea fișierelor originale. Înainte de a face acest lucru, este o idee bună să testați fișierul zip funcționează corect.
Puteți utiliza funcția -T comutați pentru a testa dacă fișierul zip este valid.
De exemplu:
zip myfilename.zip -T
Ieșirea din această comandă atunci când o arhivă este nevalidă poate să arate ca:
- avertizare zip: semnătură lipsă - probabil nu este un fișier zip
Rețineți că puteți încerca comanda -F pentru a remedia fișierele zip rupte.
Este demn de remarcat faptul că -T poate produce fals pozitive, deoarece spune că un fișier zip este corupt, chiar dacă când îl deschideți, puteți extrage toate fișierele.
Cum să excludeți fișierele
Uneori doriți să excludeți anumite fișiere dintr-un fișier zip. De exemplu, dacă copiați fișierele de pe telefonul dvs. sau camera digitală, aveți un amestec de videoclipuri și imagini. S-ar putea să doriți să faceți zip până la fotografii.zip și videoclipuri la videoclipuri.zip.
Iată o modalitate de a exclude videoclipurile atunci când creați photos.zip
zip photos.zip -r / home / fotografii / -x * .mp4
Cum se specifică nivelul de compresie
Când comprimați fișierele într-un fișier zip, sistemul decide dacă să comprime fișierul sau să îl stocheze. Fișierele MP3, de exemplu, sunt deja comprimate, deci nu este prea important să le comprimăm în continuare; acestea sunt de obicei stocate ca într-un fișier zip.
Cu toate acestea, puteți specifica un nivel de compresie cuprins între 0 și 9 pentru a comprima mai mult un fișier. Acest lucru durează mai mult timp, dar poate aduce economii semnificative de spațiu.
zip myfiles.zip -r / home -5