AIX6.1,我使用java执行tar命令来提取tar包。我遇到的一个问题是,在thi tar包中有一些长名称的文件无法提取到它们应该存在的位置。但发生在当前工作文件夹中。并且这些文件的文件所有者也不正确。
我用Google搜索并发现有很多帖子可以使用GUN tar来避免长文件名问题。但我确信这与我遇到的问题不同。
有谁知道为什么会这样?任何提示都很感激。感谢。
答案 0 :(得分:1)
手册页对此主题非常有启发性。可能你的tar文件并不严格与POSIX兼容。在AIX上:
The prefix buffer can be a maximum of 155 bytes and the name buffer can
hold a maximum of 100 bytes. If the path name cannot be split into
these two parts by a slash, it cannot be archived.
GNU tar的Linux手册页说它可以处理各种tar文件格式变种。其中一个是'ustar'POSIX标准,它似乎是由AIX tar处理的标准。有一个单独的gnu格式,这是GNU tar的默认格式。
我怀疑你是用一个只能理解POSIX标准的tar工具打开一个GNU tar存档,而且它无法应对。