Linux 如何在不提取整个文件的情况下更改存档(.ear)文件中的文件
我有一个Linux 如何在不提取整个文件的情况下更改存档(.ear)文件中的文件,linux,file,archive,binaryfiles,ear,Linux,File,Archive,Binaryfiles,Ear,我有一个.ear文件(像tar/zip这样的存档文件),里面有一个我想更改的文件 例如,myfile.ear包含1.txt,我想将1.txt更改为2.txt,还可能更改1.txt中的一些内容(如sed所做的) 我真的想避免提取myfile.ear,更改文件并再次压缩 有人知道在linux中实现这一点的方法吗 如果不可能,我也想知道原因 谢谢。EAR文件只是JAR文件,而JAR文件只是ZIP文件。ZIP格式IIRC包含交错的元数据和数据,因此更改一个文件(可能比要替换的文件大/小)可能不合适(或留
.ear
文件(像tar/zip这样的存档文件),里面有一个我想更改的文件
例如,myfile.ear
包含1.txt
,我想将1.txt
更改为2.txt
,还可能更改1.txt
中的一些内容(如sed
所做的)
我真的想避免提取myfile.ear
,更改文件并再次压缩
有人知道在linux中实现这一点的方法吗
如果不可能,我也想知道原因
谢谢。EAR文件只是JAR文件,而JAR文件只是ZIP文件。ZIP格式IIRC包含交错的元数据和数据,因此更改一个文件(可能比要替换的文件大/小)可能不合适(或留下间隙),因此在所有实际操作中,在进行修改时必须重写该文件。EAR文件只是JAR文件,只是ZIP文件。ZIP格式IIRC包含交错的元数据和数据,因此更改一个文件(可能比要替换的文件大/小)可能不合适(或留下间隙),因此在所有实际操作中,在进行修改时必须重写该文件。是否可以只提取特定文件,修改并重新放回?或者我必须重新压缩所有内容吗?我使用过的任何ZIP util都会通过这些修改重新创建存档。那么是否可以只提取特定的文件,修改它,然后再放回去?或者我必须重新压缩所有内容吗?我使用过的任何ZIP util都会通过这些修改重新创建存档。