logo

ZIP-kommando i Linux med exempel

ZIP är ett komprimerings- och filpaketeringsverktyg för Unix. Varje fil lagras i en enda .zip {.zip-filename}-fil med filtillägget .zip.

båsalgoritm
  • Zip används för att komprimera filer för att minska filstorleken och används också som ett filpaketverktyg. Zip finns i många operativsystem som Unix, Linux, Windows, etc.
  • Om du har begränsad bandbredd mellan två servrar och vill överföra filerna snabbare, zippa filerna och överför dem.
  • Zip-programmet placerar en eller flera komprimerade filer i ett enda zip-arkiv, tillsammans med information om filerna (namn, sökväg, datum, tidpunkt för senaste ändring, skydd och kontrollinformation för att verifiera filens integritet). En hel katalogstruktur kan packas i ett zip-arkiv med ett enda kommando.
  • Kompressionsförhållanden på 2:1 till 3:1 är vanligt för textfiler. zip har en komprimeringsmetod (deflation) och kan även lagra filer utan komprimering. zip väljer automatiskt den bästa av de två för varje fil som ska komprimeras. Programmet är användbart för att paketera en uppsättning filer för distribution, arkivering av filer och för att spara diskutrymme genom att tillfälligt komprimera oanvända filer eller kataloger.

Syntax:



zip [options] [file_name.zip] [files_names]>

Syntaxen för Skapa en zip-fil:

zip [file_name.zip] [file_name]>

Alternativ i 'Zip'-kommandot i Linux

alternativ Beskrivning Syntax
-d

(Ta bort filer från arkivet):
Det här alternativet låter dig ta bort specifika filer från ett zip-arkiv. Efter att ha skapat en zip-fil kan du selektivt ta bort filer med alternativet -d.

zip -d [file_name.zip] [files_name]>
-i

(Uppdatera filer i arkivet):
Alternativet -u låter dig uppdatera filer i ett befintligt zip-arkiv. Du kan ange en lista över filer som ska uppdateras eller lägga till nya filer i arkivet. Uppdateringen sker endast om den modifierade versionen är nyare än den som redan finns i zip-arkivet.



zip -u [file_name.zip] [files_name]>
-m

(Flytta filer till arkivet):
Med alternativet -m kan du flytta specificerade filer till zip-arkivet. Denna operation tar också bort målkatalogerna eller filerna efter att zip-arkivet skapats. Om en katalog blir tom efter att filerna tagits bort tas den också bort. Använd det här alternativet med försiktighet, eftersom det tar bort indatafilerna permanent.

zip -m [file_name.zip] [files_name]>
-r

(Rekursivt zippa en katalog):
Alternativet -r låter dig zippa en katalog och dess filer rekursivt. Den inkluderar alla filer som finns i den angivna katalogen och dess underkataloger i det resulterande zip-arkivet.

zip -r [file_name.zip] [directory_name]>
-x

(Uteslut filer från zip-filen):
Med alternativet -x kan du utesluta specifika filer från att inkluderas i zip-arkivet. Detta är användbart när du vill zippa alla filer i en katalog men vill utesluta vissa oönskade filer.



zip -r [file_name.zip] -x [directory_name]>
-i

(Verbose mode):
Alternativet -v aktiverar det verbose-läget, vilket ger diagnostisk information under komprimering. Den visar en förloppsindikator och erbjuder utförlig diagnostisk information om zip-filstrukturen. När den används ensam, skriver den ut en diagnostisk skärm tillsammans med detaljer om den körbara zip-filen och målmiljön.

zip -v [file_name.zip] [file_name]>

Exempel på 'Zip'-kommando i Linux

1) kommandot 'unzip' i 'Zip'

unzip kommer att lista, testa eller extrahera filer från ett ZIP-arkiv, som vanligtvis finns på Unix-system. Standardbeteendet (utan alternativ) är att extrahera alla filer från det angivna ZIP-arkivet till den aktuella katalogen (och underkatalogerna under den).

Syntax:

unzip [file_name.zip]>

Exempel:

Anta att vi har ett zip-filnamn = jayesh_gfg.zip och vi har tre textfiler inuti namnet = a.txt, b.txt och c.txt. vi måste packa upp den i den aktuella katalogen.

Syntax och utdata:

unzip jayesh_gfg.zip>

Här använde vi ` ls ` kommando för att visa alla filer som har packats upp från den zippade filen.

Packa upp en fil

2) '-d' Alternativ i Zip kommando

Syntax:

zip -d [file_name.zip] [files_name]>

Anta att vi har zip-filnamn = myfile.zip och har åtta filer i namnet = hello1.c, hello2.c, hello3.c, hello4.c, hello5.c, hello6.c, hello7.c, hello8.c .

Vi måste ta bort hello7.c, då...

Syntax och utdata:

zip -d myfile.zip hello7.c>

Här,

  1. Först har vi raderat `hello7.c` framgångsrikt.
  2. Sedan använde vi sudo unzip myfile.zip för att packa upp filen för att bekräfta att vår fil är raderad.
  3. Sedan använde vi ls för att se filen som hade packats upp.

Notera: Använd ` sudo ` ser du felet nekad behörighet.

java ände för loop

ta bort en fil från zip-filen

3) alternativet '-u' i Zip-kommandot

Syntax:

zip -u [file_name.zip] [files_name]>

Anta att vi har zip-filnamn= myfile.zip och vi måste lägga till ett nytt filnamn = hello9.c i den.

Syntax och utdata:

zip -u myfile.zip hello9.c>

Här,

vi har använt ` vi ` för att se att vår fil har lagts till.

lägg till en fil i zip-fil

4) alternativet '-m' i Zip-kommandot

Syntax:

zip -m [file_name.zip] [files_name]>

Anta att vi har zip-filnamn= myfile.zip och vi måste flytta filerna namn = hello1.c, hello2.c, hello3.c, hello4.c, hello5.c, hello6.c, hello8.c, hello9.c Present i nuvarande katalog till zip-fil.

Syntax och utdata:

zip -m myfile.zip *.c>

Här,

exempel på binärt sökträd

vi har använt `ls` för att se att våra filer flyttas framgångsrikt.

För att kontrollera filer inuti myfile.zip kan vi skriva vi myfile.zip.

flyttade filer inuti zip-filen

5) alternativet '-r' i Zip-kommandot

Syntax:

zip -r [file_name.zip] [directory_name]>

Anta att vi har zip-filnamn= myfile.zip och vi måste flytta filernas namn = hello1.c, hello2.c, hello3.c, hello4.c, hello5.c, hello6.c, hello7.c, hello8.c present i katalognamn= jkj_gfg till zip-fil rekursivt.

Syntax och utdata:

zip -r myfile.zip jkj_gfg/>

Här,

För att kontrollera filer inuti myfile.zip kan vi skriva vi myfile.zip.

kopiera filen rekursivt bilda en katalog till en zip-fil

6) alternativet '-x' i Zip-kommandot

Syntax:

zip -r [file_name.zip] -x [directory_name]>

Anta att vi har zip-filnamn= myfile.zip och vi måste flytta filernas namn = hello1.c, hello2.c, hello3.c, hello4.c, hello5.c, hello6.c, hello7.c, hello8.c present i katalognamn= jkj_gfg till zip-fil rekursivt.

Syntax och utdata:

zip -r myfile.zip . -x a.txt>

Här,

Här används alternativet -r för att rekursivt lägga till alla filer och kataloger i den aktuella katalogen till arkivet, och. anger den aktuella katalogen som källkatalog. Alternativet -x a.txt exkluderar filen a.txt från arkivet.

För att kontrollera filer inuti myfile.zip kan vi skriva vi myfile.zip.

fil kopieras rekursivt förutom en fil som vi nämnde.

7) '-v'-alternativ i Zip-kommandot

Syntax:

zip -v [file_name.zip] [file_name]>

Om vi ​​vill veta om alla filer med filtillägget .c

Syntax och utdata:

virtuellt minne
zip -v myfile.zip *.c>

kontrollera information om alla filer i zip

De vanligaste frågorna om 'zip'-kommandot i Linux

1) Hur skapar jag en zip-fil i Linux?

Genom att använda ` blixtlås ` kommandot självt.

Exempel:

Vi skapar en zip-fil med namnet = `gfg.zip` som innehåller filerna `first.txt` och `second.txt`:

Syntax:

zip gfg.zip first.txt second.txt>

2) Hur extraherar jag en zip-fil i linux?

Genom att använda ` packa upp` kommando.

Exempel:

vi extraherar filnamn = `gfg.zip`:

unzip gfg.zip>

3) Hur utesluter jag specifika filer från ett zip-arkiv?

Genom att använda ` -x `-alternativet i zip-kommandot.

Exempel:

För att utesluta specifika filer från ett zip-arkiv kan vi använda alternativet -x följt av namnet på filen du vill exkludera. Till exempel skapar följande kommando en zip-fil med namnet `gfg.zip` som innehåller alla filer i den aktuella katalogen utom `third.txt`:

zip -r gfg.zip . -x third.txt>

4) Hur inkluderar jag dolda filer i ett zip-arkiv?

Genom att bara använda ` -r `-alternativet, som kopierar varje fil rekursivt. Till exempel är vårt zip-filnamn 'gfg.zip' och vi vill arkivera dolda filer i den aktuella katalogen.

zip -r gfg.zip .>

5) Hur lösenordsskyddar jag ett zip-arkiv?

Genom att använda alternativet ` -P ` följt av lösenordet vi vill använda. Till exempel vårt zip-filnamn = `gfg.zip` som innehåller filnamn = `first.txt` och `second.txt`. Och vi använde också ` -Det är ` för att kryptera vårt zip-arkiv, så när en användare extraherar arkivfilen kommer en uppmaning att ange lösenordet.

zip -e -P [my_password] gfg.zip first.txt second.txt>

Slutsats

Zip-kommandot i Linux används för att komprimera filer och paketera dem i ett enda .zip-arkiv, vilket överlag hjälper oss att spara diskutrymme och göra det enkelt att hantera stora data. Vi har diskuterat olika alternativ som används i zip-kommandon som -d, -u, -m, -r, -x och -v. Sammantaget är det ett rekommenderat verktyg för Linux-användare för att effektivt hantera sina filer.