gpt4 book ai didi

java - 在 windows 中创建的 tar.gz 无法在 linux 下正确解压 - ArchiverFactory/org.rauschig.jarchivelib.Archiver

转载 作者:太空宇宙 更新时间:2023-11-04 12:02:08 26 4
gpt4 key购买 nike

我在我的工具中使用 (Java)ArchiverFactory/org.rauschig.jarchivelib.Archiver https://rauschig.org/jarchivelib/examples.html在 windows 下创建 tar.gz 存档,在 linux 下必须解压缩,但是 filetree 有问题。

例如,我想压缩文件夹 test/其中包含测试/a.txt测试/b.txt

Archiver archiver = ArchiverFactory.createArchiver(ArchiveFormat.TAR,CompressionType.GZIP);
archiver.create("archive", new File(path/to/dir/test), new File(output/path));

所以我有 archive.tar.gz,它包含(在 Windows 上)一个目录 test,以及该目录中的 2 个文件(a.txt 和 b.txt):

/test/a.txt
/test/b.txt

但是在 linux 上解压缩相同的存档后 (tar -xvf archive.tar.gz) 我有一个空目录 (test) 和 2 个文件,它们的目录和文件名称带有斜杠“/”:

/test/
/test\a.txt
/test\b.txt

我在 Windows 下的所有路径中都使用“/”,也尝试过“\\”但没有成功。在 Linux 上解包看起来像这样:

ubuntu@ubuntu:~/Desktop/temp$ tar -xvf archive.tar.gz 
test/
test\\a.txt
test\\b.txt

这个斜杠/反斜杠有什么问题?

最佳答案

好的,这是库问题...我使用的是 0.7.1,但在最近更新的 0.8.0 中这个问题已得到解决;)所以,请始终使用最新版本!

关于java - 在 windows 中创建的 tar.gz 无法在 linux 下正确解压 - ArchiverFactory/org.rauschig.jarchivelib.Archiver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51986761/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com