Es wird versucht, eine Datei zu entpacken. Der Dateiname stimmt nicht überein, wenn das Verzeichnis vorhanden ist

32

Beim Versuch, eine Datei mit dem Namen Joomla_3.0.3-Stable-Full_Package.zip in das Verzeichnis mit dem Namen joomla zu entpacken, stimmen die Dateinamen nicht überein. Warum das?

[root @ Feddy Joomla] # unzip -Z Joomla_3.0.3-Stable-Full_Package.zip / opt / lampp / htdocs / joomla /
Archiv: Joomla_3.0.3-Stable-Full_Package.zip
Vorsicht: Dateiname stimmt nicht überein: / opt / lampp / htdocs / joomla /

Hier ist die Bildschirmdarstellung des Verzeichnisses:

Joomla Bildschirm Besetzung

(Das joomla Verzeichnis ist leer)

Suhail Gupta
quelle

Antworten:

36

Sie können dies auch erhalten, wenn Sie versuchen, die zu entpackenden Dateien anzugeben und ein Platzhalterzeichen zu verwenden. Beispielsweise:

unzip -o somearchive.zip somedir/*

Was passieren kann ist, dass die Bash somedir/*zu einem tatsächlich existierenden Verzeichnis und den darin enthaltenen Dateien erweitert wird. Diese Liste wird dann zum Entpacken übergeben und versucht, diese Dateien in der ZIP-Datei zu finden.

Um dieses Verhalten zu verhindern, gehen Sie *wie folgt vor:

unzip -o somearchive.zip somedir/\*

Oder setzen Sie die zu extrahierenden Dateien in doppelte Anführungszeichen:

unzip -o somearchive.zip "somedir/*"
sjbotha
quelle
1
Was ist die -o Flagge?
Amalgovinus
1
Mit der Option -o werden vorhandene Dateien ohne Aufforderung überschrieben.
Sjbotha
Möglicherweise wird auch der Fehler "Dateiname stimmt nicht überein" angezeigt, wenn sich Ihre -oFlagge an der falschen Stelle befindet: unzip -o ARCHIVE_NAME.zipist gut, während unzip ARCHIVE_NAME.zip -oschlecht
Jaymon
Downvoting, weil diese Antwort zwar zutreffende Aussagen macht, aber nicht das Problem des OP anspricht. Dies ist ein Missverständnis in Bezug auf die zu entpackenden Argumente.
Ernest Friedman-Hill
Ich hatte diesen Fehler, fand diese Seite und diese Antwort löste mein Problem.
Derek Bennett
16

Das Argument Dateiname nach dem Archivnamen gibt eine zu extrahierende Datei an. Verwenden Sie -ddiese Option, um das Zielverzeichnis anzugeben:

Usage: unzip [-Z] [-opts[modifiers]] file[.zip] [list] [-x xlist] [-d exdir]
    ...
    -d  extract files into exdir

Darüber hinaus -Zwird zum Abfragen des Archivs nicht extrahiert.

Choroba
quelle
hab dich nicht verstanden Können Sie bitte den Befehl schreiben
Suhail Gupta
1
@SuhailGupta: unzip -d /opt/lampp/htdocs/joomla/ Joomla_3.0.3-Stable-Full_Package.zipdh fallen lassen -Z, hinzufügen -d.
Choroba
2

Dieser genaue Befehl hat bei mir funktioniert:
unzip -o archive.zip -d /Users/current/Dev/tools/

Beachten Sie die Kombination der Optionen -o& -d(Ziel / Inflationspfad).

Brei
quelle
arbeitete auch für mich.
Manikandan Arunachalam
2

Diese Fehlermeldung wird auch angezeigt, wenn Sie versuchen, ein ganzes Zip-Verzeichnis mit einem einzigen Befehl zu dekomprimieren. Beispiel:

unzip *.zip

Ich habe die Lösung auf einer anderen Website gefunden. Das *Symbol muss mit einem Escape-Zeichen versehen werden. Führen Sie stattdessen Folgendes aus:

unzip \*.zip

stattdessen.

dfasdfg
quelle
oh .. sieht aus wie Fluchtsymbole sind nicht erlaubt, aber ich bin sicher, dass jeder weiß, was das sind.
Dfasdfg
Das ergibt für mich keinen Sinn, zumindest nicht, wenn Sie über Unix / Linux sprechen. (Es mag sinnvoll sein, wenn Sie über Windows sprechen, aber diese Frage bezieht sich auf Fedora Linux.) Soweit dies (möglicherweise) sinnvoll ist, scheint es ein Duplikat der Antwort von  sjbotha zu sein . Können Sie erklären, was Sie deutlicher meinen?
G-Man sagt, dass Monica
Ich sprach über den Befehl zum Entpacken, den ich auf einem Linux-System verwendet habe. Ich hatte ein Verzeichnis mit vielen zip-Dateien und ich habe versucht, sie alle mit unzip * .zip zu extrahieren und bekam diesen Fehler, weil der * nicht entkommen war. Sie könnten auch Recht haben, wenn Sie nicht hierher gehören, da die Operation nur versucht hat, eine Zip-Datei zu extrahieren, und ich versucht habe, viele mit einem Befehl zu extrahieren.
Dfasdfg
1

Der Versuch, eine komprimierte Datei mit einem neuen Namen zu entpacken, löst die Ausnahme "Dateiname stimmt nicht überein" aus. Um dies zu umgehen, verschieben Sie die ZIP-Datei in das Zielverzeichnis

mv the_file.zip somedir/

Navigieren Sie zum Zielverzeichnis

cd somedir/

Führen Sie von dort aus den Befehl unzip ohne das Argument für den Zieldateinamen aus

unzip the_file.zip

Alles wird gut funktionieren.

In diesem Fall sollten die Befehle also lauten

[root@Feddy Joomla]# mv Joomla_3.0.3-Stable-Full_Package.zip /opt/lampp/htdocs/joomla/
[root@Feddy Joomla]# cd /opt/lampp/htdocs/joomla/
[root@Feddy Joomla]/opt/lampp/htdocs/joomla# unzip Joomla_3.0.3-Stable-Full_Package.zip
Tenflex
quelle