jco*_*ado 30
如果需要将文件添加到与原始目录层次结构相同的文件夹中,则只需添加完整路径即可:
zip -g xxx.zip folder/file
Run Code Online (Sandbox Code Playgroud)
否则,最简单的方法是在临时目录中的zip文件中创建所需的相同布局.
要详细说明一年前的@Ignacio Vazquez-Abrams答案,您可以使用较低级别的库,例如Python附带的库:
#!/bin/bash
python -c '
import zipfile as zf, sys
z=zf.ZipFile(sys.argv[1], "a")
z.write(sys.argv[2], sys.argv[3])
z.close()
' myfile.zip source/dir/file.txt dir/in/zip/file.txt
Run Code Online (Sandbox Code Playgroud)
这将打开myfile.zip
并source/dir/file.txt
从dir/in/zip/file.txt
zip文件中添加文件系统.