Warum verschwindet die Tarball Verzeichnisstruktur, wenn ich Archiv Perl verwenden :: Tar?

StackOverflow https://stackoverflow.com/questions/1544468

  •  20-09-2019
  •  | 
  •  

Frage

Ich bin mit einem Perl-Skript einige Dateien in einem TAR, und die Verzeichnisstruktur innerhalb der resultierenden TAR schwindet zu ändern. Eliminieren mehr und mehr Code, den ich habe so weit wie alle gekommen, dass dies

zu reproduzieren erforderlich ist
my $data_tar = Archive::Tar->new('data.tar');
$data_tar->write('modified_data.tar');

Beide TAR-Dateien haben alle Dateien, aber die Angabe, welche Verzeichnisse die Dateien und Unterverzeichnisse wurden lokalisiert in verloren.

Ich habe durch die Dokumentation und src gesucht Archive :: Tar aber ich weiß nicht wirklich verstehen, was vor sich geht.

Ich bin mit Perl 5.10.0 auf win32, Teer 1.12 und Archive :: Tar 1,54. Ich untersuchte die TAR-Dateien in einem Editor und die data.tar enthält dir / und dir / file.txt, aber in der modified_data.tar sie als dir zeigen und datei.txt so meine ursprüngliche tar ok scheint.

Jeder von euch, der dies gesehen hat, vor oder irgendwelche Ideen?

War es hilfreich?

Lösung

C:\Temp> perl -v

This is perl, v5.10.1 built for MSWin32-x86-multi-thread
(with 2 registered patches, see perl -V for more detail)
C:\Temp> perl -MArchive::Tar -e "print $Archive::Tar::VERSION"
1.52

replizieren kann nicht data.tar mit erstellt mit:

C:\Temp> tar --version
tar (GNU tar) 1.21

Wie @ ~ Quack Noten, der docs Zustand :

  

Beachten Sie, dass GNU tar älter als Version 1.14 nicht gut fertig mit dem POSIX-Header-Präfix. Wenn Sie eine solche Version verwenden, sollten Sie die Einstellung $Archive::Tar::DO_NOT_USE_PREFIX Variable true.

Andere Tipps

habe ich versucht, das Skript, aber konnte das Problem nicht reproduzieren (auf FreeBSD mit Perl 5.10).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top