在Linux zip中,除了给定的子路径之外,是否可以递归压缩文件夹?
例如,要压缩'base_folder'及其所有子文件夹,但'base_folder / sub_folder'除外。
有可能吗? 如果是这样,怎么样?
答案 0 :(得分:34)
zip -r base_folder.zip base_folder -x base_folder/sub_folder/\* base_folder/another_sub_folder/\*
(我已将您在评论中提供的经验中的改进信息纳入其中。)
有关详细信息:man zip
答案 1 :(得分:3)
您可以将tar
与--exclude
一起使用,并使用-z
选项gzip输出tar文件。
答案 2 :(得分:1)
找到文件,排除文件夹,将剩余文件xargs为tar或zip或其他:
find /in/your/dir | grep -v 'name_of_dir_to_be_excluded' | xargs tar jcvf nameOfArchive.tar.bz2