将zip / tgz文件嵌入到shell脚本中以使其自行解压是一个相当古老的技巧,Springboot创建了一个完全可执行的jar,再次使用相同的技术,它是jar负载附加的shell脚本。
这一切都很好,但令我惊讶的是文件仍然是一个zip文件,我可以用zipinfo -1
列出它的内容,所以zipinfo必须忽略顶部的脚本文件。
这种格式规范是什么?
我知道如果我运行sed -e '1,/^exit/ !d' <file>
我能够提取脚本部分,但这是一些标准吗?我没有看到分隔符指示有效载荷的起始位置
此外,并非所有工具都实现了这种格式,即IBM java不喜欢它。