I am trying to create a zip file and want to preserve most of the directory structure, but not the rootdir as defined from the command line. The command I’m using is:
zip -r out.zip /foo/bar/
I’d like it to recurse through bar and add all files with preserved directory structure (which it does). However I do not want ‘foo’ to be the top level directory in the zip file created. I would like bar to be the top level directory.
Is there any easy way to go about this? I realize I could change directories before zipping to avoid the problem, but I’m looking for a solution that doesn’t require this.
Advertisement
Answer
I don’t believe zip has a way to exclude the top level directory. I think your best bet would be to do something like: pushd /foo; zip -r out.zip ./bar; popd;
But this is exactly the sort of answer you said you didn’t want.