tar -xvf *.tar.gz gibt mir beim Extrahieren einen komischen Namen

tar -xvf *.tar.gz gibt mir beim Extrahieren einen komischen Namen

Ich habe eine Datei „elasticsearch-servicewrapper.tar.gz“. Wenn ich versuche, sie auszuführen:

tar -xvf elasticsearch-servicewrapper.tar.gz

Ich erwarte, dass der extrahierte Ordner „elasticsearch-elasticsearch-servicewrapper“ heißt. Stattdessen erhalte ich jedoch „elasticsearch-elasticsearch-servicewrapper-d47d048“. Gibt es eine Möglichkeit, den Zielordnernamen zu erzwingen?

Dies ist auf Ubuntu 12.04.

Antwort1

Es liegt nicht an Tar – das Verzeichnis wird nur erstellt, weil es sich ohnehin im Tarball befand, also hat es den Namen, der im Tarball gespeichert ist.

Sie können als Workaround Ihren eigenen Zielordner erstellen und ihn mit --strip-components dorthin extrahieren, um führende Pfadnamen zu entfernen.

Antwort2

Warum benennen Sie es nicht einfach in mv elasticsearch-elasticsearch-servicewrapper-d47d048 elasticsearch-elasticsearch-servicewrapper?

Du könntest es tar -xvf elasticsearch-servicewrapper.tar.gz -C /tmp/elasticsearch-servicewrapperauch versuchen.

verwandte Informationen