Vraag Hoe een zipbestand uit de Terminal te unzippen?


Heb net een .zip-bestand van internet gedownload. Ik wil de terminal gebruiken om het bestand uit te pakken. Wat is de juiste manier om dit te doen?


1145
2017-12-11 04:37


oorsprong


Pak alle bestanden uit de huidige map uit, u kunt gebruiken: unzip \ *. Zip - burtsevyg
@burtsevyg de backslash is daar niet nodig. Het maakt schelptraktatie \* als letterlijk sterrenbeeld. Gebruik gewoon unzip *.zip om de schaal uit te breiden * naar alle bestanden die eindigen op .zip - Sergiy Kolodyazhnyy


antwoorden:


Als het unzip opdracht is nog niet op uw systeem geïnstalleerd en voer dan uit:

sudo apt-get install unzip

Na het installeren van het unzip-hulpprogramma, kunt u, als u naar een bepaalde doelmap wilt extraheren, het volgende gebruiken:

unzip file.zip -d destination_folder

1576
2017-12-11 04:44



Als u zich al in de map bevindt die u wilt uitpakken, vult u de 2e en 3e argumenten weg, d.w.z. unzip /path/to/file.zip - Severo Raz
Ik heb zojuist dit commando gebruikt. Dit is een voorbeeld. Stap 1 (Ik veranderde in de map waar het zip-bestand is opgeslagen): cd /home/paf/Copy/Programming/Javascript/Json    Step2 (ik pak het zip-bestand uit in de map die ik net heb genoemd): unzip file.zip -d /home/paf/Copy/Programming/Javascript/Json - pablofiumara
unzip kan een standaardprogramma zijn. Met andere woorden, u hoeft het misschien niet te installeren. - noobninja
@Aevi Controleer manpagina's [-d exdir] An optional directory to which to extract files. - Zety
Zorg ervoor dat je extraheert naar een map, in tegenstelling tot tar-archieven, vind je mogelijk dat veel mensen tientallen bestanden in hun root-directory van hun zip-bestanden opnemen, dit kan echt een puinhoop maken !!! - Steve


Je kunt het gewoon gebruiken unzip.

Installeer het: apt-get install unzip

En gebruik het: unzip file.zip


192
2017-12-11 04:41





Een nuttiger hulpmiddel is 7z, dat een reeks compressie-indelingen ritst en uitgepakt, met name lzma, meestal het protocol met de hoogste compressiepercentages.

Deze opdracht wordt geïnstalleerd 7z:

sudo apt-get install p7zip-full

Dit commando geeft de inhoud van de zip weer:

7z l zipfile.zip

Met deze opdracht wordt de inhoud van de zip geëxtraheerd:

7z x zipfile.zip

96
2017-09-14 08:01



7z e houdt de mappenstructuur niet vast - 7z x doet... - assylias
13.10 zegt dat 7z niet bestaat. Ik denk dat het sudo apt-get install 7zip moet sudo - nitishch
Ik denk dat de installatieopdracht moet zijn sudo apt-get install p7zipof sudo apt-get install p7zip-full Je hebt de volledige versie nodig om de 7z opdracht. De volledige is ook de enige die zip- en andere soorten indelingen van de twee verwerkt. - Automatico
zou u "Een nuttiger hulpmiddel" kunnen verduidelijken? Vergelijk je met unzippen? Kunt u voorbeelden geven van functies die 7z nuttiger maken en misschien in welke context 7z de voorkeur heeft? - David LeBauer
Voor sommige unzip is nuttiger: eenvoudig te gebruiken en de naam om te onthouden. - Shy Robbiani


Je kunt gebruiken:

unzip file.zip -d somedir

uitpakken yourpath/somedir

Als u naar een absoluut pad wilt extraheren, gebruikt u

sudo unzip file.zip -d /somedir

38
2018-05-28 16:45





Werken met scriptingtools: Perl en Python

Veel antwoorden noemen hier hulpmiddelen die moeten worden geïnstalleerd, maar niemand heeft gezegd dat twee van Ubuntu's scriptingtalen, Perl en Python, al zijn voorzien van alle benodigde modules waarmee u een zip-archief kunt unzippen, wat betekent dat u niets hoeft te installeren anders. Gebruik gewoon een van de twee onderstaande scripts om het werk te doen. Ze zijn vrij kort en kunnen zelfs gecondenseerd worden tot een opdracht met één voering als we dat wilden.

Python

#!/usr/bin/env python3
import sys
from zipfile import PyZipFile
for zip_file in sys.argv[1:]:
    pzf = PyZipFile(zip_file)
    pzf.extractall()

Gebruik:

./pyunzip master.zip

Perl

#!/usr/bin/env perl
use Archive::Extract;
foreach my $filepath (@ARGV){
    my $archive = Archive::Extract->new( archive => $filepath );
    $archive->extract;
}

Gebruik:

./perlunzip master.zip

23
2018-06-02 18:43





Als uw bestemming hetzelfde is als het bron-zipbestand, kunt u gewoon het volgende doen:

unzip filename.zip

20
2018-03-20 06:28



Op Ubuntu 17.04 vereist -d om onbekende reden. - 林果皞


ik geef de voorkeur aan bsdtar naar unzip/zip. Voor uitpakken zijn ze vergelijkbaar:

bsdtar -x -f /one/two/three/four.zip -C /five
unzip /one/two/three/four.zip -d /five

Maar om te zippen, bsdtar wint. Stel dat je deze input hebt:

/one/two/three/alfa/four.txt
/one/two/three/bravo/four.txt

en wil dit in het zip-bestand:

alfa/four.txt
bravo/four.txt

Dit is gemakkelijk met bsdtar:

bsdtar -a -c -f four.zip -C /one/two/three alfa bravo

zip heeft niet de -d optie zoals unzippen, dus je hebt geen manier om het bovenstaande te bereiken tenzij jij cd eerste.


14
2017-12-02 01:50





Hier is de gedetailleerde beschrijving van de opties die ik nuttig vind:

Command: unzip -[option] zip-path.  
               -l List archive files.  
               -t Test archive files with cyclic redundancy check.  
               -u update the existing files.  
               -z archive comment.  

14
2017-10-14 10:58