Linux-kommandon

Zippa och packa upp kommandon i Linux

Zippa och packa upp kommandon i Linux

Zip är ett populärt kommando över flera plattformar som används för komprimering och arkivering av data. Komprimering sparar utrymme genom att krympa storleken på data medan arkivering gör överföringen av data enklare genom att kombinera flera filer eller kataloger till en enda fil. Tänk, om vi måste överföra 5 filer över internet, var och en med storlek 50 megabyte; att överföra alla filer en efter en kan ta lång tid. Om du komprimerar filerna för att minska storleken upp till 25 MB och sedan arkiverar dem alla i en enda fil blir det mycket snabbare att överföra filerna än när de är okomprimerade. Zip är det mest använda verktyget för arkivering och komprimering av filer, medan unzip används för att extrahera och dekomprimera zippade filer.

I den här artikeln kommer vi att titta på zip- och unzip-kommandona i Linux, tillsammans med deras kommandoradsalternativ och exempel.

Förutsättningar

Notera: Kommandona som nämns i den här artikeln har testats på Ubuntu 20.04 LTS (Focal Fossa). Samma kommandon gäller även för Debian-distribution.

Installera Zip och Unzip

Som standard är zip- och unzip-paket installerade i Ubuntu-system. Om dessa saknas i ditt system kan du enkelt installera dem. Starta terminalen med Ctrl + Alt + T-tangentbordet. För att installera zip, ge sedan följande i Terminal:

$ sudo apt installera zip

För att installera unzip, utfärda kommandot nedan i Terminal:

$ sudo apt installera unzip

Det finns några scenarier där du kan behöva zip-filer:

ZIP-kommando i Linux

För att skapa en zip-fil måste du ange namnet på det zippade arkivet och de filer som måste inkluderas i zip.

$ zip-alternativ zip_file file1 file2…

Zip en fil

För att zip en enda fil med namnet testfil.Text; till en zip-fil med namnet testa.blixtlås, kommandot skulle vara:

$ zip-test.zip-testfil.Text


Ovanstående kommando komprimerar den angivna filen i den aktuella katalogen medan den lämnar originalfilen.

För att bekräfta om zip-filen har skapats, utfärda kommandot i terminalen nedan:

$ ls -l

Zippa flera filer

Du kan också zip flera filer med zip-kommandot. Låt oss skapa några filer som heter testfil1.Texttestfil2.Texttestfil3.Text, och testfil4.Text med följande kommando i terminalen:

$ sudo touch testfil1.txt testfil2.txt testfil3.txt testfil4.Text

Nu för att zip dessa filer i en enda fil, namngiven filer.blixtlås, utfärda följande kommando i terminalen:

$ zip-filer.zip testfil1.txt testfil2.txt testfil3.txt testfil4.Text

Du kan också använda jokertecken för att ange flera filer med samma tillägg. Till exempel för att zip alla filer som slutar med .txt-tillägg i en zip-fil med namnet files1.zip, utfärda följande kommando i terminalen:

$ zip-filer 1.blixtlås *.Text

Zippa en fil till en annan katalog

Om du behöver zip en fil till någon annan katalog än den aktuella katalogen, använd följande syntax:

$ zip / sökväg / till / katalog.zip_file filnamn

Till exempel att zip testfil.Text fil till Dokument / dokument / katalog som heter testa.blixtlås, kommandot skulle vara:

$ zip Dokument / dokument / test.zip-testfil.Text

Lägg till fil i ett befintligt zip

Du kan också lägga till en fil i en befintlig zip-fil. Använd följande syntax för att göra det:

$ zip -u zip_file filnamn

Låt oss säga att du har en zip-fil (filer1.blixtlås) Och du vill inkludera ytterligare en fil (testfil4.Text) I det skulle kommandot, i detta fall, vara:

$ zip -u-filer1.zip testfil4.Text

Ta bort en fil från en zip-fil

På samma sätt kan du också ta bort en fil från en redan existerande zip-fil. Använd följande syntax för att göra det:

$ zip -d zip_file filnamn

Låt oss säga att du har en zip-fil (filer1.blixtlås) Och du vill ta bort en fil (testfil1.Text) Från det skulle kommandot, i detta fall, vara:

$ zip -d-filer1.zip testfil1.Text

Zipa filer i tyst läge

Om du inte vill visa utdata från zip-kommandot, använd alternativet -q (tyst) med zip-kommandot enligt följande:

$ zip -q zip_file filnamn

Till exempel när du zippar testfilen.txt kan du undertrycka utdata med följande kommando:

$ zip -q test.zip-testfil.Text

I följande skärmdump kan du se zip-kommandoutgången som inte har visats på terminalen.

Ta bort originalfiler efter att du har zippat

Som standard behåller zip originalfilen tillsammans med den komprimerade filen. Men med hjälp av -m alternativet med zip-kommandot kan du ta bort originalfilerna efter att du har skapat deras zippade fil.

$ zip -m zip_file filnamn

Till exempel kommer följande kommando att ta bort testfil.Text efter att ha skapat sin zippade fil, testa.blixtlås.

$ zip -m test.zip-testfil.Text

Zip-kataloger

För att zip-kataloger i ditt Linux-system ska du använda -r (rekursivt) alternativ med zip-kommandot. De -r alternativet kommer att kasta katalogerna rekursivt, dvs.e., inklusive innehåll i underkataloger.

$ zip -r zip_file katalognamn

Till exempel att zipa Dokument katalog rekursivt till testa.blixtlås fil, skulle kommandot vara:

$ zip -r test.zip-dokument /

Detta kommando kommer att zippa dokumentkatalogen tillsammans med alla underkataloger och filer som ingår i den.

Ställa in kompressionsnivå

Du kan också ställa in komprimeringsnivån som ska tillämpas på filerna som zippas. Komprimeringsnivån varierar från 0 till 9, där 6 är standardvärdet, 0 är det lägsta värdet och 9 är det högsta komprimeringsvärdet.

Till exempel att zipa alla textfiler till filer1.blixtlås med det högsta komprimeringsvärdet skulle kommandot vara:

$ zip -9 filer1.blixtlås *.Text


På samma sätt att zipa alla textfiler till filer2.blixtlås med det lägsta kompressionsvärdet -0, kommandot skulle vara:

$ zip -0 filer2.blixtlås *.Text


Följande är resultatet av ls kommandot efter att du skapat zip-filerna. Om vi ​​jämför storlekarna på båda zip-filerna kan du se files1.zip, som komprimeras med komprimeringsnivå 9, har mindre storlek jämfört med filer2.zip, som komprimeras med komprimeringsnivå 0.

Skapa en lösenordsskyddad zip-fil

Du kan också skapa lösenordsskyddade zip-filer med -e alternativ med zip-kommandot enligt följande:

$ zip -e zip_file filnamn

Till exempel kommer följande kommando att zippa alla textfiler i filer3.blixtlås, be sedan om ett lösenord. Ställ in valfritt lösenord och tryck på Enter. Kontrollera sedan lösenordet genom att skriva det igen och trycka på Enter.

$ zip -e-filer3.blixtlås *.Text

Lägga till lösenord för att zip-filer med zipcloak

I föregående exempel har vi skapat en lösenordsskyddad zip-fil. Men tänk om du har skapat en zip-fil och glömt att ställa in lösenordet. Med zipcloak-kommandot kan du när som helst ställa in ett lösenord till en zip-fil.

$ zipcloak zip_file

Till exempel för att ställa in ett lösenord till en redan skapad zip-fil med namnet filer.blixtlås, kommandot skulle vara:

$ zipcloak-filer.blixtlås

Du kommer att bli ombedd att ange ett lösenord. Skriv valfritt lösenord och tryck Stiga på. Kontrollera sedan lösenordet genom att skriva det igen och trycka på Stiga på.

Visa filinformation med zipdetails-kommandot

Zipdetails-kommandot visar detaljerad information om den zippade filen. Informationen den visar handlar om poststruktur snarare än om komprimerad data. För att hitta detaljerad information om den zippade filen, skriv zipdetails följt av det zippade filnamnet, som visas nedan:

$ zipdetails zip_file

Till exempel för att hitta detaljerad information om en zippad fil, testa.blixtlås, kommandot skulle vara:

$ zipdetails test.blixtlås

I utgången ser du mycket information om din zippade fil.

Sök inuti filen med zipgrep-kommandot

Med zipgrep-kommandot kan vi söka efter en viss text i filer i den zippade filen utan att extrahera den. Om en zip-fil är lösenordsskyddad måste du först ange lösenordet för den. För att söka efter text i zip-filen, använd följande syntax:

$ zipgrep-uttryck zip_file

Till exempel för att söka efter vilka filer i zip-filen testa.blixtlås innehåller ordet inkörsport, kommandot skulle vara:

$ zipgrep gateway-test.blixtlås

Utgången är som följer. Du kan se två filer iplist.text och iplist inuti testa.blixtlås innehåller ordet gateway.


För att söka efter en text från en viss fil inuti zip-filen kan du också lägga till den:

$ zipgrep-uttryck zip_file filnamn

Till exempel kommer följande kommando att söka efter ordet inkörsport från endast en specifik fil iplist inuti zip-filen testa.blixtlås:

$ zipgrep gateway-test.zip Document / docs / iplist

Visa information med zipinfo-kommandot

Zipinfo-kommandot i Linux listar filerna i en zip-fil tillsammans med deras behörigheter, kompressionstyp, originalstorlek, datum och tidsstämpel. För att se information om en specifik zip-fil, skriv zipinfo följt av filnamnet, som visas nedan:

$ zipinfo filnamn

Följande kommando visar information om zip-filen filer1.blixtlås:

$ zipinfo-filer 1.blixtlås

Dela upp filen med zipsplit-kommandot

Ibland är zip-filens storlek för stor för att du inte kan ladda upp den eller skicka den som en bilaga på grund av storleksbegränsningar. Med kommandot zipsplit kan du dela zip-filer i mindre filer som är lättare att överföra. Att dela en zip-fil i mindre filer, med storlek inte längre än , syntaksen skulle vara:

$ zipsplit -n Zip fil

De  är den maximala storleken för delade filer.

Till exempel kommer kommandot nedan att delas testa.blixtlås i mindre filer med en storlek som inte längre än 104857600 byte (104 MB).

$ zipsplit -n 104857600 test.blixtlås

Här är utdata från ovanstående kommando. De testa.blixtlås filen är uppdelad i tre filer, som sekventiellt benämns som test1.blixtlåstest2.blixtlås, och test3.blixtlås, respektive.

Om du kör ls kommando, kommer du att se alla de tre delade zip-filerna, tillsammans med den ursprungliga zip-filen.

Lägg till eller visa kommentarer i en zip-fil med zipnote

Med zipnote-kommandot kan du lägga till, visa och redigera kommentarerna i din zip-fil. Använd följande kommando för att visa kommentarer:

$ zipnote zip_file

Ersätt blixtlås fil med ditt faktiska zip-filnamn.

Om det inte finns några kommentarer ser du följande standardvy:


För att lägga till kommentarer måste du först omdirigera utdata från zipnote till kommentarfilen. Använd följande kommando för att göra det:

$ zipnote zip_file> kommentarer

Till exempel att lägga till kommentarer till filer1.blixtlås, kommandot skulle vara:

$ zipnote-filer1.zip> kommentarer

Redigera nu kommentarer fil med följande kommando:

$ sudo nano kommentarer

För varje fil, lägg till dina kommentarer ovanför raderna som säger @ (kommentar ovanför denna rad),spara och avsluta sedan filen. Vi har lagt till två kommentarer i kommentarfilen, vilket framgår av skärmdumpen nedan.


Skriv nu kommentarerna till din zip-fil med följande kommando:

$ zipnote -w zip_file < comments

I vårt fall skulle kommandot vara;

$ zipnote -w filer1.blixtlås < comments

Nu kan du verifiera om kommentarerna har lagts till genom att utfärda följande kommando i Terminal:

$ zipnote zip_file

Visa hjälp

För att se hjälp med zip-kommando, använd följande kommando:

$ zip --hjälp

Du kan också besöka manusidan för zip-verktyget med följande kommando:

$ man zip

Packa upp kommandot i Linux

Med kommandot unzip kan du enkelt extrahera innehåll från en zip-fil. För att packa upp en fil, använd följande syntax:

$ unzip-alternativ zip_file

Packa upp enstaka zip-filer

För att packa upp en enda zip-fil, låt oss säga test.zip, kommandot skulle vara:

$ unzip-test.blixtlås

Den packar upp filen i den aktuella katalogen.

Packa upp en fil till en annan katalog

Du kan också packa upp en fil till någon annan katalog snarare än till den aktuella katalogen med alternativet -d enligt följande:

$ unzip zip_file -d / path / to / katalog

För att packa upp en zip-fil, testa.blixtlås till Dokument, katalog, skulle kommandot vara:

$ unzip-test.zip -d Dokument /

Packa upp flera filer

Tänk på att det finns flera zip-filer i en aktuell katalog som du vill packa upp. Du kan packa upp dem alla med ett enda kommando enligt följande:

$ unzip '*.blixtlås'

Detta kommando packar upp alla zip-filer som finns i din nuvarande katalog.

Undertrycka utdata när du använder unzip

På samma sätt som zip-kommandot kan du också dölja utdata från unzip-kommandot med -q alternativ enligt följande:

$ unzip -q zip_file

Uteslut filer med unzip

Om du vill packa upp en zip-fil men inte vill extrahera en specifik fil, använd -x alternativ nedan:

$ unzip zip_file -x filnamn

Vi har till exempel ett blixtlås filetest.blixtlås som innehåller tre filer i den. Följande kommando packar upp alla filer utom den ena filen Rapportera.Text:

$ unzip-test.zip -x-rapport.Text

Packa upp lösenordsskyddade zip-filer

Använd för att packa upp en lösenordsskyddad zip-fil utan att fråga -P alternativ följt av lösenordet för filen:

$ unzip -P Zip fil

Vi har till exempel en zip-fil, testa.blixtlås, som skyddas av lösenordet “tenn”. För att extrahera den här filen skulle kommandot vara:

$ unzip -P tennprov.blixtlås

Skriva över zip-filer

Om du packar upp en fil till en plats där de extraherade filerna redan existerar kommer du att bli ombedd att: skriva över den aktuella filen, hoppa över att packa upp den aktuella filen, skriva över alla filer, hoppa över packa upp alla filer eller byta namn på filen.


För att skriva över alla befintliga filer utan att fråga, använd -o alternativ enligt följande:

$ unzip -o zip_file

Lista innehållet i ett zip

Använda -l alternativet med unzip-kommandot kan du lista innehållet i en zip-fil utan att extrahera den.

$ unzip -l zip_file

Exempel:

$ unzip -l test.blixtlås

Följande är utdata från ovanstående kommando som listar filerna i zip-filen testa.blixtlås, tillsammans med deras namn, originalfilstorlek, datum och tidsstämplar.

Visa detaljerad information

För att visa detaljerad information utan att extrahera zip-filen, använd alternativet -v enligt följande:

$ unzip -v zip_file

Exempel:

$ unzip -v test.blixtlås

Följande är utdata från ovanstående kommando som visar filerna i testa.blixtlås, tillsammans med deras namn, originalfilstorlek, komprimerad storlek, komprimeringsmetod, komprimeringsförhållande, datum och tidsstämplar.

Söker efter fel i ett arkiv

Med alternativet -t i unzip-kommandot kan du kontrollera om en zip-fil är giltig och inte innehåller några fel.

$ unzip -t test1.blixtlås

Exempel:

$ unzip -t test1.blixtlås

Ovanstående kommandokontroll för fel i test1.blixtlås fil och visar resultat. Följande utdata visar att det inte finns något fel i den komprimerade filen.

Visa hjälp

Använd följande kommando för att se hjälp angående unzip-kommandot:

$ unzip --hjälp

Du kan också besöka unzip-verktygssidan med följande kommando:

$ man packa upp

Slutsats

Det är allt du behöver veta för att behärska zip- och unzip-kommandon i Linux. I den här artikeln har vi diskuterat i detalj användningen av zip- och unzip-kommandon i Linux tillsammans med olika kommandoradsalternativ och exempel.

Mus Hur man ändrar vänster och höger musknapp på Windows 10 PC
Hur man ändrar vänster och höger musknapp på Windows 10 PC
Det är en hel norm att alla datormusenheter är ergonomiskt utformade för högerhänta användare. Men det finns musenheter tillgängliga som är speciellt ...
Mus Emulera musklick genom att sväva med Clickless Mouse i Windows 10
Emulera musklick genom att sväva med Clickless Mouse i Windows 10
Att använda en mus eller tangentbord i fel hållning av överdriven användning kan resultera i många hälsoproblem, inklusive stam, karpaltunnelsyndrom o...
Mus Lägg till musgester i Windows 10 med dessa gratisverktyg
Lägg till musgester i Windows 10 med dessa gratisverktyg
Under senare år har datorer och operativsystem utvecklats kraftigt. Det fanns en tid då användare var tvungna att använda kommandon för att navigera g...