Hoe te zippen of Unzippen van Bestanden Van de Linux Terminal

0
35

ZIP-bestanden zijn een universeel archief algemeen gebruikt op Windows, macOS, en zelfs Linux-systemen. U kunt een zip-archief-of uitpakken van bestanden van de ene met een aantal gemeenschappelijke Linux terminal commando ‘ s.

De ZIP Gecomprimeerd Bestand Formaat

Dankzij de dominantie van het ZIP-bestand in de Windows-wereld, ZIP-bestanden zijn waarschijnlijk de meest voorkomende vorm van gecomprimeerd archief in de wereld.

Terwijl .tar.gz en tar.bz2 bestanden zijn vaak op Linux, Windows-gebruikers zullen waarschijnlijk sturen u een archief in ZIP-formaat. En, als u wilt archiveren van een aantal bestanden en deze verzenden naar een Windows gebruiker, de ZIP-indeling worden de gemakkelijkste, meest geschikte oplossing voor iedereen.

GERELATEERD: het Uitpakken van Bestanden Uit een .tar.gz of .teer.bz2-Bestand op Linux

zip, unzip, en Andere Hulpprogramma ‘ s

Misschien weet u al dat Linux-en Unix-achtige besturingssystemen, zoals mac os hebben gereedschappen waarmee u ZIP-bestanden in-en uitpakken van bestanden uit hen, genaamd zip en unzip. Maar er is een hele familie van verwante voorzieningen zoals zipcloak, zipdetails, zipsplit , en zipinfo.

We kregen een aantal Linux distributies om te zien of ze deze hulpprogramma ‘ s in de standaard installatie. Alle nutsvoorzieningen aanwezig waren in Ubuntu 19.04, 18.10, en 18.04. Zij waren ook aanwezig in Manjaro 18.04. Fedora 29 opgenomen zip en unzip, maar geen van de andere hulpprogramma ‘ s en dat was ook het geval voor CentOS.

Het installeren van de ontbrekende elementen op Fedora 29, gebruik je het volgende commando:

sudo dnf installeren perl-IO-Comprimeren

Het installeren van de ontbrekende elementen op CentOS 7, gebruik je het volgende commando:

sudo yum installeren perl-IO-Comprimeren

Als een van de zip-hulpprogramma ‘ s ontbreken van een Linux-distributie die niet hierboven vermeld, is het gebruik dat van uw Linux-distributie is de package beheer tool te installeren pakket.

Het Maken van een ZIP-Bestand met de zip Commando

Voor het maken van een ZIP-bestand, moet u vertellen zip-de naam van het archiefbestand en welke bestanden in. U hoeft toe te voegen “.zip” uitbreiding van het archief naam, maar het kan geen kwaad als je dat doet.

Maak een bestand genaamd source_code.zip met de C-broncode-bestanden en de header bestanden in de huidige directory, gebruik je dit commando:

zip-source_code *.c *.h

Elk bestand wordt weergegeven als het is toegevoegd. De naam van het bestand en de hoeveelheid compressie die was bereikt op het bestand wordt weergegeven.

Als je kijkt naar de nieuwe ZIP-archief hebt, kunt u zien dat de “.zip” bestand extensie is automatisch toegevoegd door de rits.

ls -l source_code.zip

Als u niet wilt dat de uitvoer van als zip het ZIP-bestand is gemaakt, gebruikt u de -q (quiet) optie.

zip -q source_code *.c *.h

Inclusief Mappen in ZIP-Bestanden

Om sub-mappen in het ZIP-bestand, gebruik je de-r (recursieve) optie en de naam van de sub-directory op de commando-regel. Voor het maken van een ZIP-bestand als voorheen en ook het archief van sub-directory, gebruik je dit commando.

zip -r -q-source_code archief/ *.c *.h

Om attent te zijn naar de persoon die het uitpakken van bestanden uit het ZIP-bestand dat u aan het maken bent, is het vaak beleefd aan het maken van ZIP-bestanden met de bestanden erin zijn opgenomen in een directory. Wanneer de persoon die het ontvangt het ZIP-bestand te extracten, alle van de bestanden geplaatst zijn netjes in een map op de computer.

In de volgende opdracht gaan we het archief van de werk map en alle onderliggende mappen. Merk op dat dit commando wordt afgegeven aan de bovenliggende map van de werk map.

zip -r -q-source_code werk/

Het instellen van het Niveau van Compressie

U kunt instellen hoe veel compressie wordt toegepast op de bestanden als ze worden toegevoegd aan het ZIP-archief. Het bereik is van 0 tot 9, waarbij 0 geen compressie. Hoe hoger de compressie, des te langer het duurt om te maken het ZIP-bestand. Voor een bescheiden formaat ZIP-bestanden, het tijdsverschil is niet een belangrijke penalty. Maar goed, voor een bescheiden formaat ZIP-bestanden, de standaard compressie (niveau 6) is waarschijnlijk goed genoeg toch.

Om zip gebruiken van een bepaald niveau van compressie, het doorgeven van het nummer als een optie op de opdrachtregel, met een “-“, zoals deze:

zip -0 -r -q-source_code werk/

De standaard compressie niveau 6. Er is geen noodzaak om de -6 optie, maar het doet geen kwaad als je dat doet.

zip -r -q-source_code werk/

De maximale compressie niveau is niveau 9.

zip–9 -r -q-source_code werk/

Met het selecteren van bestanden en mappen worden gearchiveerd hier, het verschil tussen geen compressie (niveau 0) en de standaard compressie (niveau 6) is 400K. Het verschil tussen de standaard compressie en het hoogste niveau van compressie (niveau 9) is alleen 4K.

Dat lijkt misschien niet veel, maar voor een archief met honderden of zelfs duizenden bestanden, de kleine hoeveelheid extra compressie per bestand toevoegen tot een waardevolle ruimte te besparen.

Het toevoegen van Wachtwoorden om Bestanden te zippen

Wachtwoorden toevoegen om ZIP-bestanden is eenvoudig. Gebruik de -e (coderen) optie en u wordt gevraagd uw wachtwoord in te voeren en in te voeren ter verificatie.

zip -e -r -q-source_code werk/

Hoe Pak een ZIP-Bestand Met de pak-Opdracht

De bestanden uitpakken uit een ZIP-bestand, het gebruik van de pak-opdracht, en de naam van het ZIP-bestand. Merk op dat je nodig hebt om te bieden “.zip” – extensie.

unzip source_code.zip

Als de bestanden zijn uitgepakt ze zijn vermeld in de terminal-venster.

ZIP-bestanden niet dragen details van het bestand eigendom. Alle bestanden worden geëxtraheerd van de eigenaar hebt ingesteld voor de gebruiker die is om ze te extraheren.

Net als zip, unzip heeft a-q (quiet) optie, zodat u niet hoeft te zien, de lijst is als de bestanden zijn uitgepakt.

unzip -q source_code.zip

Het uitpakken van Bestanden naar een doelmap

Om de bestanden uitgepakt in een bepaalde map, gebruikt u de -d (directory) optie, en het pad naar de map die u wilt het archief worden gehaald.

unzip -q source_code.zip -d ./ontwikkeling

Pak een Wachtwoord Beveiligd ZIP-Bestanden

Als een ZIP-bestand is gemaakt met een wachtwoord, pak zal je vragen om het wachtwoord. Als u niet het juiste wachtwoord verstrekken, pak zal niet uitpakken van de bestanden.

unzip -q source_code.zip

Als u niet de zorg over uw wachtwoord door anderen gezien wordt.—noch over het feit opgeslagen in uw opdracht de geschiedenis—u kunt het wachtwoord op de commando-regel met de -P (wachtwoord) optie. (U moet gebruik maken van een hoofdstad “P.”)

unzip -P vijftig.stroop.cutlass -q source_code.zip

Met Uitzondering Van Bestanden

Als u niet wilt dat om op te halen een bepaald bestand of een groep bestanden, gebruik dan de-x (uitsluiten) optie. In dit voorbeeld willen we alles uitpakken van de bestanden afgezien van die eindigt op een “.h” – extensie.

unzip -q source_code.zip -x *.h

Het Overschrijven Van Bestanden

Stel je hebt gewonnen van een archief, maar u hebt verwijderd van een paar van de uitgepakte bestanden per ongeluk.

Een snelle oplossing voor dat zou uitpakken van de bestanden opnieuw. Maar als u probeert om het uitpakken van het ZIP-bestand in dezelfde map als voorheen, pak je vragen om een beslissing te nemen over het overschrijven van de bestanden. Het verwacht een van de volgende antwoorden.

Afgezien van de r (de naam van) reactie, deze reacties zijn hoofdlettergevoelig.

  • y: Ja, dit bestand overschreven
  • n: Nee, niet dit bestand overschreven
  • A: Alle, overschrijven van de bestanden
  • N: Geen, overschrijven geen van de bestanden
  • r: Hernoem dit bestand uitpakken, maar geef het een nieuwe naam. U zal worden gevraagd om een nieuwe naam.

Te dwingen unzip om het overschrijven van bestaande bestanden gebruik je de-o (overschrijven) optie.

unzip -o -q source_code.zip

De meest efficiënte manier om de vervanging van de ontbrekende bestanden zou zijn om unzip alleen extract alle bestanden in het archief niet in de doelmap. Om dit te doen, gebruik je de-n (nooit overschrijven) optie.

pak -n source_code.zip

Op zoek In een ZIP-Bestand

Het is vaak nuttig en leerzaam om een lijst van de bestanden in een ZIP-bestand voordat u uitpakken. U kunt dit doen met de optie-l (een lijst archief) optie. Het is doorgesluisd door minder te maken van de output beheersbaar.

unzip -l source_code.zip | minder

De uitvoer bevat de mappen en bestanden in het ZIP-bestand, en hun lengte en de tijd en datum waarop ze zijn toegevoegd aan het archief. Druk op ‘ q ‘ om te stoppen met minder.

Er zijn andere manieren om een kijkje te nemen in een ZIP-bestand geven verschillende soorten informatie, zoals we zullen zien.

Een Wachtwoord toevoegen Met de Opdracht zipcloak

Als u hebt gemaakt een ZIP-bestand, maar vergeten voor het toevoegen van een wachtwoord, wat kan je doen? U kunt snel een wachtwoord toevoegen aan ZIP-bestand met behulp van de zipcloak opdracht. Pas de naam van het ZIP-bestand op de commando-regel. U zal worden gevraagd om een wachtwoord. U moet controleren of het wachtwoord een tweede keer.

zipcloak source_code.zip

Bekijk de Details van een Bestand Met de Opdracht zipdetails

De zipdetails commando geeft u veel informatie over het ZIP-bestand. De enige verstandige manier omgaan met het bedrag van de uitvoer van deze opdracht kan geven is om de buis door minder .

zipdetails source_code.zip | minder

Let op dat de informatie als bestandsnamen zelfs als het ZIP-bestand met een wachtwoord is beveiligd. Dit soort informatie die is opgeslagen in het ZIP-bestand als meta-data en is geen onderdeel van de gecodeerde gegevens.

Zoeken In het Bestand Met de Opdracht zipgrep

De zipgrep commando stelt u in staat om te zoeken in de bestanden in een ZIP-bestand. In het volgende voorbeeld willen we weten welke bestanden in het ZIP-bestand hebt de tekst “keyval.h” in hen.

zipgrep keyval.h source_code.zip

We kunnen zien dat de bestanden slang.c en getval.c bevatten de string “keyval.h”.We kunnen ook zien dat er twee exemplaren van elk van deze bestanden in verschillende mappen in het ZIP-bestand.

Bekijk de Informatie Met de zipinfo Opdracht

De zipinfo opdracht geeft u nog een andere manier om te kijken in een ZIP-bestand. Zoals eerder, we pijp de uitgang van minder.

zipinfo source_code.zip | minder

Van links naar rechts de output laat zien:

  • Het bestand machtigingen
  • De versie van het hulpprogramma voor het maken van het ZIP-bestand
  • Het originele bestand grootte
  • Een file descriptor (hieronder beschreven)
  • De methode van compressie (deflatie, in dit geval)
  • De data en tijd stempel
  • De naam van het bestand en elke directory

De file descriptor bestaat uit twee tekens. Het eerste teken is een “t” of een “b” om aan te geven van een tekst-of binair bestand. Als het om een hoofdletter in het bestand is versleuteld. Het tweede teken is wellicht één van de vier personages. Dit teken staat voor wat voor soort meta-gegevens is opgenomen voor dit bestand: geen, een uitgebreide lokale header, een “extra veld”, of beide.

  • -: Als geen van beide bestaat, is het karakter van een koppelteken
  • l: als er sprake is van een uitgebreide lokale kop maar geen extra veld
  • x: als er geen uitgebreide lokale koptekst, maar er is een extra veld
  • X: als er sprake is van een uitgebreide lokale kop en er is een extra veld

Splitsen van het Bestand Met de Opdracht zipsplit

Als u het verzenden van het ZIP-bestand naar iemand anders, maar er zijn beperkingen voor de grootte of problemen met de transmissie van het bestand, kunt u gebruik maken van de zipsplit opdracht splitsen de originele ZIP-bestand in een reeks van kleinere ZIP-bestanden.

De -n (grootte) optie stelt u de maximale grootte van elk van de nieuwe ZIP-bestanden. In dit voorbeeld, we splitsen de source_code.zip -bestand. Wij willen geen van de nieuwe ZIP-bestanden groter zijn dan 100 KB (102400 bytes).

zipsplit -n 102400 source_code.zip

Het formaat dat u kiest, mag niet kleiner zijn dan de grootte van de bestanden in het ZIP-bestand.

Met behulp van deze commando ‘ s, kunt u uw eigen ZIP-bestanden uitpakken van ZIP-bestanden die u ontvangt, en het uitvoeren van diverse andere activiteiten op hen, zonder ooit het verlaten van de Linux terminal.