Gerade heruntergeladen a.zip-Datei aus dem Internet. Ich möchte das Terminal verwenden, um die Datei zu entpacken. Was ist der richtige Weg, dies zu tun?
Wenn die unzip befehl nicht bereits auf Ihrem System installiert ist, führen Sie dann aus:
sudo apt-get install unzipWenn Sie nach der Installation des Dienstprogramms zum Entpacken in einen bestimmten Zielordner extrahieren möchten, können Sie Folgendes verwenden:
unzip file.zip -d destination_folderWenn die Quell- und Zielverzeichnisse identisch sind, können Sie einfach Folgendes tun:
unzip file.zip
Sie können einfach verwenden unzip.
Installieren Sie es:
apt-get install unzipUnd benutze es:
cd /path/to/fileunzip file.zip
Ein nützlicheres Werkzeug ist 7z, das eine Reihe von Komprimierungsformaten komprimiert und entpackt, insbesondere lzma, normalerweise das Protokoll, das die höchsten Komprimierungsraten bietet.
Dieser Befehl installiert 7z:
sudo apt-get install p7zip-fullDieser Befehl listet den Inhalt der ZIP-Datei auf:
7z l zipfile.zipDieser Befehl extrahiert den Inhalt der ZIP-Datei:
7z x zipfile.zip
Sie können verwenden:
unzip file.zip -d somedirzu extrahieren nach yourpath/somedir
Wenn Sie in einen absoluten Pfad extrahieren möchten, verwenden Sie
sudo unzip file.zip -d /somedir
Verwenden von Skriptwerkzeugen: Perl und Python
In vielen Antworten werden Tools erwähnt, die installiert werden müssen, aber niemand hat erwähnt, dass zwei der Skriptsprachen von Ubuntu, Perl und Python, bereits mit allen erforderlichen Modulen geliefert werden, mit denen Sie ein Zip-Archiv entpacken können, was bedeutet, dass Sie dies nicht tun müssen Installieren Sie etwas anderes. Verwenden Sie einfach eines der beiden unten aufgeführten Skripte, um die Arbeit zu erledigen. Sie sind ziemlich kurz und können sogar zu einem einzeiligen Befehl verdichtet werden, wenn wir wollten.
Pythonschlange
#!/usr/bin/env python3import sysfrom zipfile import PyZipFilefor zip_file in sys.argv[1:]: pzf = PyZipFile(zip_file) pzf.extractall()Nutzung:
./pyunzip.py master.zip oder
python3 pyunzip.py master.zipPerl
#!/usr/bin/env perluse Archive::Extract;foreach my $filepath (@ARGV){ my $archive = Archive::Extract->new( archive => $filepath ); $archive->extract;}Nutzung:
./perlunzip master.zipoder
perl perlunzip.pl master.zipSiehe auch
Wenn die Quell- und Zielverzeichnisse identisch sind, können Sie einfach Folgendes tun:
unzip filename.zip
Ich bevorzuge bsdtar zu unzip/zip. Zum Extrahieren sind sie sich ziemlich ähnlich:
bsdtar -x -f /one/two/three/four.zip -C /fiveunzip /one/two/three/four.zip -d /fiveJedoch zum Zippen, bsdtar WINS. Angenommen, Sie haben diese Eingabe:
/one/two/three/alfa/four.txt/one/two/three/bravo/four.txtund will das in der Zip-Datei:
alfa/four.txtbravo/four.txtDas geht ganz einfach mit bsdtar:
bsdtar -a -c -f four.zip -C /one/two/three alfa bravozip hat nicht die -d option wie Entpacken, so dass Sie keine Möglichkeit haben, das oben Genannte zu erreichen, es sei denn, Sie cd erst.
Hier ist die detaillierte Beschreibung der Optionen, die ich nützlich finde:
Befehl: entpacken - [Option] zip-Pfad. -d ein optionales Verzeichnis, in das Dateien extrahiert werden sollen -l Archivdateien auflisten. -P Passwort Verwenden Passwort zum Entschlüsseln verschlüsselter ZIP-Dateieinträge (falls vorhanden). -t Testarchivdateien mit zyklischer Redundanzprüfung. -u Aktualisieren Sie die vorhandenen Dateien. -z Archiv Kommentar
Befolgen Sie diese Anweisungen: http://www.codebind.com/linux-tutorials/unzip-zip-file-using-terminal-linux-ubuntu-linux-mint-debian/
Installieren Sie entpacken
Also müssen wir zuerst unzip auf unserem System installieren, wenn es nicht installiert ist. der Befehl Entpacken wird verwendet, um Dateien aus dem AZip-Archiv zu extrahieren.
Führen Sie zum Installieren den folgenden Befehl aus
unzipsudo apt-get install unzip
unzipSyntax$ unzip [-aCcfjLlnopqtuvy] [-d dir] zipfileBefolgen Sie nun die folgenden Schritte:
Datei entpacken
MÖGLICHKEIT 1 – Wenn sich die Zip-Datei im selben Verzeichnis / Ordner befindet, in dem sich Ihr Terminal befindet, und wir sie im Verzeichnis presentworking extrahieren möchten.
Verwenden Sie den folgenden Befehl, um das oben beschriebene Szenario zu erreichen
sudo unzip zip_file_name.zipwenn die ZIP-Datei mit einem Kennwort geschützt ist, verwenden Sie den folgenden Befehl :
sudo ubzip -P zip_file_name.zipBitte stellen Sie sicher, dass Sie -P (Großbuchstaben P) und nicht -p verwenden, da dies unterschiedliche Optionen sind.
MÖGLICHKEIT 2 – Wenn die Zip-Datei nicht im selben Verzeichnis vorhanden ist und wir die Datei in einem anderen Verzeichnis extrahieren / entpacken möchten.
Verwenden Sie den folgenden Befehl, um das oben beschriebene Szenario zu erreichen
sudo unzip path/filename.zip -d another_path_or_same_pathwenn wir die Option -d nicht verwenden, wird die Datei in das Verzeichnis presentworking extrahiert.
Und wenn die ZIP-Datei passwortgeschützt ist, können wir auch verwenden
-P.verwenden Sie den Befehl tar unter Linux / Unix
tarist ein Akronym für Tape Archive. der Befehl tar wird verwendet, um Archive unter Linux / Unix zu manipulieren. Systemadministratoren verwenden tarcommand häufig, um eine Reihe von Dateien oder Verzeichnissen in hochkomprimierte Archive zu rippen, die aufgerufen werdentarballodertar,bzipundgzipin Linux/Unix System.tar-Syntax
tar [OPTION...] [FILE]...Oder
tar erforderliche Flags
tar {-r|-t|-c|-x|-u}optionale Tar-Flags
tar {one of the required Flags} [ -d ][-B] [ -F ] [ -E ] [ -i ] [-h ] [ -l ] [ -m ] [ -o ] [ -p ] [ -w] [ -s ] [ -U ] [ -v ][-Number] [-b Blocks] [-f Archive]Beispiel
Erstellen Sie eine TAR-Archivdatei, indem Sie ein Verzeichnis oder eine einzelne Datei komprimieren
Der folgende Terminalbefehl erstellt eine
.tardatei aufgerufensample_dir.tarmit einem Verzeichnis/home/codebind/sample_dirodersample_dirim aktuellen Arbeitsverzeichnis.ripon@ripon:~$ tar -cvf sample_dir.tar sample_dirsample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputripon@ripon:~$ lssample_dir sample_dir.tarHier ist, was diese Flags (-cvf) eigentlich bedeuten
-c, --create- erstellen Sie ein neues Archiv
-x, --extract, --get- extrahieren von Dateien aus einem Archiv
-f, --file ARCHIVE- archivdatei oder GERÄTEARCHIV verwendenErstellen
tar.gzodertgzArchivdatei durch Komprimieren eines Verzeichnisses oder einer einzelnen DateiDer folgende Terminalbefehl erstellt eine
.tar.gzdatei aufgerufensample_dir.tar.gzmit einem Verzeichnis/home/codebind/sample_dirodersample_dirim aktuellen Arbeitsverzeichnis.Beachten Sie, dass wir dem Befehl ein zusätzliches Flag -z hinzugefügt haben.Hier ist, was theflag -z eigentlich bedeutet
-z, --gzip, --gunzip --ungzip- Komprimieren Sie das Archiv mit gzipripon@ripon:~$ tar -cvzf sample_dir.tar.gz sample_dirsample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputripon@ripon:~$ lssample_dir sample_dir.tar.gzDer Befehl unten erstellt eine .tgz-Datei. Einer davon, um Istar zu bemerken.gz und tgz sind beide ähnlich.
ripon@ripon:~$ tar -cvzf sample_dir.tgz sample_dirsample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputripon@ripon:~$ lssample_dir sample_dir.tgzMehrere Verzeichnisse oder Dateien gleichzeitig komprimieren
Nehmen wir zum Beispiel an, wir möchten die komprimieren
sample_dirverzeichnis,dasjava_testverzeichnis und dieabc.pydatei in eine TAR-Datei namenssample_dir.tar.gz.Führen Sie den folgenden Befehl aus, um das obige Ziel zu erreichen.
ripon@ripon:~$ tar -cvzf sample_dir.tar.gz sample_dir java_test abc.pysample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputjava_test/java_test/HelloCV.javaabc.pyripon@ripon:~$ lssample_dir java_test abc.py sample_dir.tar.gzErstellen
.bzip2Archivdatei durch Komprimieren eines Verzeichnisses oder einer einzelnen Dateiripon@ripon:~$ tar -cjvf sample_dir.tar.bz2 sample_dirsample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputripon@ripon:~$Beachten Sie, dass wir ein zusätzliches Flag hinzugefügt haben
-fzum Befehl.Hier ist was die Flagge-feigentlich meine
-f, --file ARCHIVE- archivdatei oder GERÄTEARCHIV verwendenExtrahieren
.tarArchivdateiWir können die komprimierte Datei mit dem Befehl tar extrahieren oder entpacken. Der folgende Befehl extrahiert den Inhalt von
sample_dir.tarin das aktuelle Verzeichnis.ripon@ripon:~$ tar -xvf sample_dir.tarsample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputripon@ripon:~$Der folgende Befehl extrahiert oder entpackt Dateien im angegebenen Verzeichnis, dh.
/home/codebind/dir_namein diesem Fall.ripon@ripon:~$ tar -xvf sample_dir.tar -C /home/codebind/dir_namesample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputripon@ripon:~$wir haben zusätzliche Flagge hinzugefügt
-Czum Befehl.Hier ist, was die Flagge-Ceigentlich meine
-C, --directory DIR- wechseln Sie in das Verzeichnis DIR
Extrahieren Sie alle Dateien aus dem aktuellen Ordner. Sie können Folgendes verwenden: entpacken \ *.Zip
@burtsevyg der umgekehrte Schrägstrich ist dort nicht erforderlich. Dadurch wird Shell \ * als wörtliches Sternsymbol behandeln. Verwenden Sie einfach ‘entpacken *.zip’, damit die Shell * auf alle Dateien erweitert, die auf enden.Zip
Die Verwendung von * allein hat bei mir nicht funktioniert. Es verursachte Fehler Dateiname stimmt nicht überein. `*’ hat den Job gemacht.
Ubuntu hat bereits mehrere Komprimierungs- / Dekomprimierungstools installiert. Führen Sie apropos zip über die Konsole aus, um die vollständige Liste anzuzeigen.
Ich empfehle Ihnen, “unar” anstelle eines Zip-spezifischen zu verwenden und zu lernen, es sei denn, Sie benötigen bestimmte Funktionen. "Unterstützte Dateiformate sind Zip, Tar-GZip, Tar-BZip2, RAR, 7-zip, LhA, StuffIt und viele andere alte und obskure Formate. ".
Verwandt (für `*.tgz’ Dateien): Wie man entpackt .tgz-Datei mit dem Terminal?





