我想递归压缩文件夹,但排除某些目录(temp/.hidden
在下面的示例中)。我希望 zip 文件有一个顶级文件夹,temp
如下例所示,因此我的工作目录是temp
.
mkdir -p temp/subdir
touch temp/subdir/keepthisfile.txt
touch temp/excludethisfile.txt
mkdir temp/.hidden
touch temp/.hidden/exclude.txt
cd temp/
我必须实现我想要的代码是
zip -r temp.zip ../temp/ -x ../temp/excludethisfile.txt ../temp/.hidden/* ../temp/.hidden/
或者更简洁(从网上其他地方收集的语法)
zip -r temp.zip ../temp/ -x ../temp/excludethisfile.txt ../temp/*.hidden*
我可以明白为什么这会起作用,但我不明白为什么下面的代码不做同样的事情(即为什么我需要../temp/*.hidden*
而不是仅仅需要../temp/.hidden*
?)
zip -r temp.zip ../temp/ -x ../temp/excludethisfile.txt ../temp/.hidden*