shell 压缩除具有特定名称所有文件和文件夹以外的目录

r8uurelv  于 2023-01-05  发布在  Shell
关注(0)|答案(1)|浏览(222)

我知道我能做到

zip -r archive.zip ./mydir -x ./mydir/dir_x/* ./mydir/dir_y/dir_z/dir_x/*

排除这两个文件夹,但如何按名称而不是按路径排除所有目录和文件?

ddrv8njm

ddrv8njm1#

zip-x选项用于过滤掉文件名称,您不能使用它来排除目录。
一种解决方法是列出所有要放入zip归档文件的文件路径;下面是如何使用GNU/BSD find实现这一点:

find mydir ! -type d ! -path '*/dir_x/*' |
zip archive.zip -@

相关问题