Linux-kommandoer

Zip og pakke ut kommandoer i Linux

Zip og pakke ut kommandoer i Linux

Zip er en populær plattformkommando som brukes til komprimering og arkivering av data. Komprimering sparer plass ved å krympe datastørrelsen mens arkivering gjør overføringen av data enklere ved å kombinere flere filer eller kataloger i en enkelt fil. Tenk, hvis vi må overføre 5 filer over internett, hver med størrelse 50 megabyte; å overføre alle filene en etter en kan ta lang tid. Komprimering av filene for å redusere størrelsen opp til 25 MB, og arkivering av dem alle i en enkelt fil vil gjøre det mye raskere å overføre filene enn når de er komprimert. Zip er det mest brukte verktøyet for arkivering og komprimering av filer, mens utpakningen brukes til å pakke ut og dekomprimere de zippede filene.

I denne artikkelen vil vi se på zip og pakke ut kommandoer i Linux, sammen med deres kommandolinjealternativer og eksempler.

Forutsetninger

Merk: Kommandoene nevnt i denne artikkelen er testet på Ubuntu 20.04 LTS (Focal Fossa). De samme kommandoene gjelder også for Debian-distribusjon.

Installere zip og pakke ut

Som standard er zip og pakk ut pakker installert i Ubuntu-systemer. Hvis disse mangler i systemet ditt, kan du enkelt installere dem. Start terminalen ved hjelp av Ctrl + Alt + T-tastaturet. For å installere zip, utsted følgende i Terminal:

$ sudo apt installere zip

For å installere pakke ut, send kommandoen nedenfor i Terminal:

$ sudo apt installere pakke ut

Det er noen scenarier der du kan bli bedt om å zip-filer:

ZIP-kommando i Linux

For å opprette en zip-fil, må du oppgi navnet på det zip-arkivet og filene som må inkluderes i zip-en.

$ zip-alternativer zip_file file1 file2…

Zip enkelt fil

Å zip en enkelt fil med navnet testfil.tekst; til en zip-fil med navnet test.glidelås, kommandoen ville være:

$ zip test.zip-testfil.tekst


Kommandoen ovenfor vil komprimere den spesifiserte filen i den gjeldende katalogen mens den originale filen blir liggende.

For å bekrefte om zip-filen er opprettet, send kommandoen i terminalen nedenfor:

$ ls -l

Zip flere filer

Du kan også zip flere filer med zip-kommandoen. La oss lage noen filer som heter testfil1.teksttestfil2.teksttestfil3.tekst, og testfil4.tekst ved hjelp av følgende kommando i terminalen:

$ sudo touch testfil 1.txt testfil2.txt testfil3.txt testfil4.tekst

Nå for å pakke disse filene i en enkelt fil, med navnet filer.glidelås, gi følgende kommando i terminalen:

$ zip-filer.zip testfil 1.txt testfil2.txt testfil3.txt testfil4.tekst

Du kan også bruke jokertegnet til å spesifisere flere filer med samme utvidelse. For eksempel å zip alle filene som slutter med .txt-utvidelse i en zip-fil, kalt filer1.zip, gi ut følgende kommando i terminalen:

$ zip-filer 1.glidelås *.tekst

Zip en fil til en annen katalog

Hvis du trenger å zip en fil til en annen katalog enn den nåværende katalogen, kan du bruke følgende syntaks:

$ zip / sti / til / katalog.zip_file filnavn

For eksempel å zip testfil.tekst fil til Dokumenter / dokumenter / katalog som heter test.glidelås, kommandoen ville være:

$ zip Dokumenter / dokumenter / test.zip-testfil.tekst

Legg til fil i en eksisterende zip

Du kan også legge til en fil i en eksisterende zip-fil. Bruk følgende syntaks for å gjøre det:

$ zip -u zip_file filnavn

La oss si at du har en zip-fil (filer1.glidelås), Og du vil inkludere en fil til (testfil4.tekst) I den vil kommandoen, i dette tilfellet, være:

$ zip -u filer1.zip testfil4.tekst

Fjern en fil fra en zip-fil

På samme måte kan du også fjerne en fil fra en allerede eksisterende zip-fil. Bruk følgende syntaks for å gjøre det:

$ zip -d zip_file filnavn

La oss si at du har en zip-fil (filer1.glidelås), Og du vil fjerne en fil (testfil1.tekst) Fra det, vil kommandoen, i dette tilfellet, være:

$ zip -d filer1.zip testfil 1.tekst

Zip filer i stille modus

Hvis du ikke vil vise utdataene fra zip-kommandoen, bruker du -q (stille) alternativet med zip-kommandoen som følger:

$ zip -q zip_file filnavn

For eksempel mens du zipper testfilen.txt, kan du undertrykke utdataene med følgende kommando:

$ zip -q test.zip-testfil.tekst

I det følgende skjermbildet kan du se zip-kommandoutgangen som ikke har blitt vist på terminalen.

Slette originale filer etter glidelås

Som standard beholder zip den originale filen sammen med den komprimerte filen. Imidlertid bruker du -m alternativet med zip-kommandoen, kan du slette de originale filene etter at du har opprettet den zip-filen.

$ zip -m zip_file filnavn

For eksempel vil følgende kommando slette testfil.tekst etter å ha opprettet den glidelåste filen, test.glidelås.

$ zip -m test.zip-testfil.tekst

Zip-kataloger

For å zip-kataloger i Linux-systemet ditt, bruk -r (rekursivt) alternativ med zip-kommandoen. De -r alternativet vil zip katalogene rekursivt, i.e., inkludert innhold i underkataloger.

$ zip -r zip_file katalognavn

For eksempel å zip Dokumenter katalog rekursivt til test.glidelås fil, vil kommandoen være:

$ zip -r test.zip-dokumenter /

Denne kommandoen vil zip-dokumentkatalogen, sammen med alle underkataloger og filene som er inkludert i den.

Stille inn kompresjonsnivå

Du kan også stille inn kompresjonsnivået som skal gjelde for filene som blir zippet. Kompresjonsnivået varierer fra 0 til 9, hvor 6 er standardverdien, 0 er den laveste verdien og 9 er den høyeste verdien for komprimering.

For eksempel å pakke alle tekstfiler til filer1.glidelås bruker den høyeste kompresjonsverdien, vil kommandoen være:

$ zip -9 filer1.glidelås *.tekst


Tilsvarende for å pakke alle tekstfiler til filer2.glidelås bruker den laveste kompresjonsverdien -0, kommandoen ville være:

$ zip -0 filer2.glidelås *.tekst


Følgende er resultatet av ls kommandoen etter å ha opprettet zip-filene. Hvis vi sammenligner størrelsene på begge zip-filene, kan du se filer1.zip, som ble komprimert ved hjelp av kompresjonsnivå 9, har mindre størrelse sammenlignet med filer2.zip, som ble komprimert ved hjelp av kompresjonsnivå 0.

Opprett en passordbeskyttet zip-fil

Du kan også opprette passordbeskyttede zip-filer ved hjelp av -e alternativet med zip-kommandoen som følger:

$ zip -e zip_file filnavn

For eksempel vil følgende kommando zip alle tekstfiler inn filer3.glidelås, så be om passord. Angi hvilket som helst passord og trykk Enter. Bekreft deretter passordet ved å skrive det på nytt og trykke Enter.

$ zip -e filer3.glidelås *.tekst

Legge til passord i zip-filer med zipcloak

I forrige eksempel har vi opprettet en passordbeskyttet zip-fil. Men hva om du har opprettet en zip-fil og glemt å angi passordet. Med zipcloak-kommandoen kan du når som helst angi et passord til en zip-fil.

$ zipcloak zip_file

For eksempel å sette et passord til en allerede opprettet zip-fil med navnet filer.glidelås, kommandoen ville være:

$ zipcloak-filer.glidelås

Du blir bedt om passord. Skriv inn hvilket som helst passord og trykk Tast inn. Bekreft deretter passordet ved å skrive det inn og trykke på Tast inn.

Vis fildetaljer med zipdetails-kommandoen

Zipdetails-kommandoen viser detaljert informasjon om den zip-filen. Informasjonen den viser handler om rekordstruktur i stedet for komprimerte data. For å finne detaljert informasjon om den zippede filen, skriv inn zipdetails etterfulgt av det zippede filnavnet, som vist nedenfor:

$ zipdetails zip_file

For eksempel for å finne detaljert informasjon om en zip-fil, test.glidelås, kommandoen ville være:

$ zipdetails test.glidelås

I utgangen vil du se mye informasjon om den zip-filen din.

Søk inne i filen med zipgrep-kommandoen

Zipgrep-kommandoen lar oss søke etter en gitt tekst i filer i den zip-filen uten å trekke den ut. Hvis en zip-fil er passordbeskyttet, må du først oppgi passordet for den. For å søke etter tekst i zip-filen, bruk følgende syntaks:

$ zipgrep uttrykk zip_file

For eksempel for å søke etter hvilke filer i zip-filen test.glidelås inneholder ordet inngangsport, kommandoen ville være:

$ zipgrep gateway test.glidelås

Resultatet er som følger. Du kan se to filer iplist.tekst og iplist inne i test.glidelås inneholder ordet gateway.


For å søke etter en tekst fra en bestemt fil i zip-filen, kan du også legge den til:

$ zipgrep uttrykk zip_file filnavn

For eksempel vil følgende kommando søke etter ordet inngangsport fra bare en bestemt fil iplist inne i zip-filen test.glidelås:

$ zipgrep gateway test.zip Document / docs / iplist

Vis informasjon med zipinfo-kommandoen

Zipinfo-kommandoen i Linux viser filene i en zip-fil sammen med tillatelser, komprimeringstype, originalstørrelse, dato og tidsstempel. For å se informasjon om en bestemt zip-fil, skriv zipinfo etterfulgt av filnavnet, som vist nedenfor:

$ zipinfo filnavn

Følgende kommando viser informasjon om zip-filen filer1.glidelås:

$ zipinfo filer1.glidelås

Del filen med zipsplit-kommandoen

Noen ganger er zip-filens størrelse for stor til at du ikke klarer å laste den opp eller sende den som et vedlegg på grunn av størrelsesbegrensninger. Med zipsplit-kommandoen kan du dele zip-filene i mindre filer som er enklere å overføre. Å dele en zip-fil i mindre filer, med størrelse ikke lenger enn , syntaksen vil være:

$ glidelås -n zip_file

De  er den maksimale størrelsen for delte filer.

For eksempel vil kommandoen nedenfor bli delt test.glidelås i mindre filer med størrelse ikke lenger enn 104857600 byte (104 MB).

$ zipsplit -n 104857600 test.glidelås

Her er utdataene fra kommandoen ovenfor. De test.glidelås filen er delt inn i tre filer, som sekvensielt heter test1.glidelåstest2.glidelås, og test3.glidelås, henholdsvis.

Hvis du driver ls kommandoen, vil du se alle de tre delte zip-filene, sammen med den originale zip-filen.

Legg til eller se kommentarer i en zip-fil med zipnote

Med zipnote-kommandoen kan du legge til, vise og redigere kommentarene i zip-filen din. For å se kommentarer, bruk følgende kommando:

$ zipnote zip_file

Bytt ut glidelås fil med ditt faktiske zip-filnavn.

Hvis det ikke er noen kommentarer, vil du se følgende standardvisning:


For å legge til kommentarer, må du først omdirigere utdataene fra zipnote til kommentarfilen. Bruk følgende kommando for å gjøre det:

$ zipnote zip_file> kommentarer

For eksempel å legge til kommentarer til filer1.glidelås, kommandoen ville være:

$ zipnote filer1.zip> kommentarer

Nå, rediger kommentarer filen ved hjelp av følgende kommando:

$ sudo nano kommentarer

For hver fil, legg til kommentarer over linjene som sier @ (kommentar over denne linjen),deretter lagre og avslutte filen. Vi har lagt til to kommentarer i kommentarfilen, som vist fremhevet i skjermbildet nedenfor.


Skriv nå kommentarene til zip-filen din med følgende kommando:

$ zipnote -w zip_file < comments

I vårt tilfelle vil kommandoen være;

$ zipnote -w filer1.glidelås < comments

Nå kan du bekrefte om kommentarene er lagt til ved å utstede følgende kommando i Terminal:

$ zipnote zip_file

Vis hjelp

For å se hjelp angående zip-kommando, bruk følgende kommando:

$ zip --hjelp

Du kan også besøke manusiden for zip-verktøyet ved hjelp av følgende kommando:

$ man zip

Pakk ut kommandoen i Linux

Med unzip-kommandoen kan du enkelt trekke ut innhold fra en zip-fil. For å pakke ut en fil, bruk følgende syntaks:

$ pakke ut alternativer zip_file

Pakk ut enkelt zip-filer

La oss si test for å pakke ut en enkelt zip-fil.zip, vil kommandoen være:

$ pakke ut test.glidelås

Den vil pakke ut filen i den gjeldende katalogen.

Pakk ut en fil til en annen katalog

Du kan også pakke ut en fil til en annen katalog i stedet for den nåværende katalogen ved å bruke alternativet -d som følger:

$ pakke ut zip_file -d / path / to / katalog

Å pakke ut en zip-fil, test.glidelås til Dokumenter, katalog, vil kommandoen være:

$ pakke ut test.zip -d Dokumenter /

Pakk ut flere filer

Tenk på at det er flere zip-filer i en nåværende katalog som du vil pakke ut. Du kan pakke ut dem alle ved hjelp av en enkelt kommando som følger:

$ pakke ut *.glidelås'

Denne kommandoen vil pakke ut alle zip-filene i den nåværende katalogen.

Undertrykk utdata når du bruker pakke ut

I likhet med zip-kommandoen, kan du også skjule utdataene for utpakkekommandoen ved hjelp av -q alternativ som følger:

$ unzip -q zip_file

Ekskluder filer ved å pakke ut

Hvis du vil pakke ut en zip-fil, men ikke ønsker å pakke ut en bestemt fil, bruker du -x alternativet nedenfor:

$ unzip zip_file -x filnavn

For eksempel har vi glidelås filetest.glidelås inneholder tre filer i den. Følgende kommando pakker ut alle filene unntatt den ene filen rapportere.tekst:

$ pakke ut test.zip -x rapport.tekst

Pakk ut passordbeskyttede zip-filer

For å pakke ut en passordbeskyttet zip-fil uten å spørre, bruk -P alternativet, etterfulgt av passordet for filen:

$ pakke ut -P zip_file

For eksempel har vi en zip-fil, test.glidelås, som er beskyttet av passordet “tinn”. For å trekke ut denne filen, vil kommandoen være:

$ pakke ut -P tinnprøve.glidelås

Overskriving av zip-filer

Hvis du pakker ut en fil til et sted der de ekstraherte filene allerede eksisterte, blir du bedt om å: overskrive den nåværende filen, hoppe over å pakke ut den nåværende filen, overskrive alle filer, hoppe over å pakke ut alle filene eller gi nytt navn til filen.


For å overskrive alle eksisterende filer uten å spørre, bruk -o alternativ som følger:

$ unzip -o zip_file

Liste innholdet i en zip

Bruker -l alternativet med unzip-kommandoen, kan du liste innholdet i en zip-fil uten å pakke den ut.

$ unzip -l zip_file

Eksempel:

$ unzip -l test.glidelås

Følgende er utdata fra kommandoen ovenfor som viser filene i zip-filen test.glidelås, sammen med navn, opprinnelig filstørrelse, dato og tidsstempel.

Se detaljert informasjon

For å se detaljert informasjon uten å trekke ut zip-filen, bruk alternativet -v som følger:

$ unzip -v zip_file

Eksempel:

$ unzip -v test.glidelås

Følgende er utdata fra kommandoen ovenfor som viser filene i test.glidelås, sammen med navn, original filstørrelse, komprimert størrelse, komprimeringsmetode, komprimeringsforhold, dato og tidsstempel.

Søker etter feil i et arkiv

Med alternativet -t i unzip-kommandoen kan du sjekke om en zip-fil er gyldig og ikke inneholder noen feil.

$ unzip -t test1.glidelås

Eksempel:

$ unzip -t test1.glidelås

Ovennevnte kommando sjekker for feil i test1.glidelås filen og viser resultatene. Følgende utdata viser at det ikke er noen feil i den komprimerte filen.

Vis hjelp

Bruk følgende kommando for å vise hjelp angående utpakningskommandoen:

$ unzip --help

Du kan også besøke mann-siden for å pakke ut verktøyet ved å bruke følgende kommando:

$ man pakke ut

Konklusjon

Det er alt du trenger å vite for å mestre zip og pakke ut kommandoer i Linux. I denne artikkelen har vi diskutert i detalj bruken av zip- og pakkekommandoer i Linux sammen med forskjellige kommandolinjealternativer og eksempler.

Topp 5 spillfangstkort
Vi har alle sett og elsket streaming av spill på YouTube. PewDiePie, Jakesepticye og Markiplier er bare noen av de beste spillerne som har tjent milli...
Hvordan utvikle et spill på Linux
For et tiår siden ville ikke mange Linux-brukere forutsi at deres favorittoperativsystem en dag ville være en populær spillplattform for kommersielle ...
Åpne kildeporter for kommersielle spillmotorer
Gratis, åpen kildekode og plattformspillmotorrekreasjoner kan brukes til å spille gamle så vel som noen av de ganske nylige spilletitlene. Denne artik...