linux - 从 Ant tar 任务打包的 .tar.gz 中提取时对包含非拉丁字符的文件名进行编码

标签 linux ant encoding tar

我正在使用 Ant 构建 tar.gz 存档:

<tar destfile="${linux86.zip.file}" compression="gzip" longfile="gnu">
    <tarfileset dir="${work.dir}/data" dirmode="755" filemode="755"  
                prefix="${app.folder}/data"/>
</tar>

Archive 是在 Windows 上构建的。在 Ubuntu 12 上提取名称包含非拉丁(例如西里尔)字符的文件后,名称已损坏。

有什么办法可以解决或解决这个问题吗?

最佳答案

没有。 Tar 文件仅支持 ascii 文件名。看这个问题:Creating tar archive with national characters in Java 。我认为您需要另一种格式或工具,具有更现代的设计。

请注意zip taskencoding 属性,也许这种格式可以工作?

关于linux - 从 Ant tar 任务打包的 .tar.gz 中提取时对包含非拉丁字符的文件名进行编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12456560/

相关文章:

Java - 在编译时检查属性文件

python - PyPDF2<=1.19 存在 PDF 编码问题

linux - Perl one-liner 是否可以为给定的每个文件 arg 执行 END block

linux - Docker,AWS-EKS : Docker-build command, Davfs 挂载不工作,没有免费的 coda 设备可以挂载

eclipse - 为 JavaScript Web 开发人员获取 Eclipse IDE 的 ANT View

ant - 在不失败的情况下停止ant脚本

c++ - 寻找更好的编码和压缩数字的方法

R 默认编码为 UTF-8

linux - 如何在 Linux 中处理具有固定宽度列的文件

linux - 为什么 binutils 或 gcc 安装在两个位置?