Właśnie pobrałem plik .zip z Internetu. Chcę użyć terminala do rozpakowania pliku. Jaki jest właściwy sposób to zrobić?
command-line
zip
ubuntu-nerd
źródło
źródło
\*
jak dosłowny symbol gwiazdy. Wystarczy użyć,unzip *.zip
aby powłoka rozszerzyła się*
na wszystkie pliki kończące się na.zip
*
samemu nie działało dla mnie. To spowodowałofilename not matched
błędy.\*
wykonał robotę.apropos zip
z konsoli, aby uzyskać pełną listę.Odpowiedzi:
Jeśli
unzip
polecenie nie jest jeszcze zainstalowane w systemie, uruchom:Po zainstalowaniu narzędzia do rozpakowywania, jeśli chcesz rozpakować plik do określonego folderu docelowego, możesz użyć:
Jeśli katalog źródłowy i docelowy są takie same, możesz po prostu:
źródło
unzip /path/to/file.zip
cd /home/paf/Copy/Programming/Javascript/Json
Krok 2 (rozpakowałem plik zip w katalogu, o którym właśnie wspomniałem):unzip file.zip -d /home/paf/Copy/Programming/Javascript/Json
unzip
może być programem domyślnym. Innymi słowy, nie musisz go instalować.[-d exdir] An optional directory to which to extract files.
Możesz po prostu użyć
unzip
.Zainstaluj to:
I użyj tego:
źródło
Bardziej przydatnym narzędziem jest
7z
zamykanie i rozpakowywanie szeregu formatów kompresji, zwłaszczalzma
protokół oferujący najwyższe stopnie kompresji.To polecenie instaluje
7z
:To polecenie wyświetla zawartość pliku zip:
To polecenie wypakowuje zawartość zip:
źródło
7z e
nie utrzymuje struktury katalogów -7z x
nie ...sudo apt-get install p7zip
lubsudo apt-get install p7zip-full
Potrzebujesz pełnej wersji, aby uzyskać7z
polecenie. Full jest również jedynym, który obsługuje zip i inne rodzaje formatów spośród tych dwóch.Możesz użyć:
wyodrębnić do
yourpath/somedir
Jeśli chcesz wyodrębnić ścieżkę bezwzględną, użyj
źródło
Korzystanie z narzędzi skryptowych: Perl i Python
Wiele odpowiedzi tutaj wspomina o narzędziach, które wymagają instalacji, ale nikt nie wspomniał, że dwa języki skryptowe Ubuntu, Perl i Python, już zawierają wszystkie niezbędne moduły, które pozwalają rozpakować archiwum zip, co oznacza, że nie trzeba niczego instalować jeszcze. Po prostu użyj jednego z dwóch skryptów przedstawionych poniżej, aby wykonać zadanie. Są dość krótkie i można je nawet skondensować z poleceniem jednowierszowym.
Pyton
Stosowanie:
lub
Perl
Stosowanie:
lub
Zobacz też
źródło
'''
unzip(){ python -c "from zipfile import PyZipFile; PyZipFile( '''$1''' ).extractall()"; }
Jeśli katalog źródłowy i docelowy są takie same, możesz po prostu:
źródło
Wolę
bsdtar
dounzip
/zip
. Do wyodrębnienia są dość podobne:Jednak w przypadku zipowania
bsdtar
wygrywa. Powiedz, że masz te dane wejściowe:i chcę to w pliku zip:
Jest to łatwe dzięki
bsdtar
:zip nie ma takiej
-d
opcji jak rozpakowanie, więc nie możesz osiągnąć powyższego, chyba żecd
najpierw.źródło
bsdtar
nie wróży to dobrze znakom specjalnym, takim jak co najmniej jedno słowo naBlóðstokkinn
liście, gdy nie kompresujesz. Nawet nie sprawdzałem podczas kompresji. Co za porażka. : /unzip
poradził sobie z tym bez problemu.Oto szczegółowy opis opcji, które uważam za przydatne:
źródło
http://www.codebind.com/linux-tutorials/unzip-zip-file-using-terminal-linux-ubuntu-linux-mint-debian/ :
źródło
zip -v
iunzip -v
. Jeśli zostanie zainstalowany, zwróci coś podobnegoUnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP.
(plus kilka wierszy dodatkowych informacji. Jeśli nie zostanie zainstalowany, powie coś takiegoThe program 'zip' is currently not installed. You can install it by typing: apt install zip
.