Eu quero zipar uma pasta recursivamente, mas excluir certos diretórios ( temp/.hidden
no exemplo abaixo). Eu quero que o arquivo zip tenha uma pasta de nível superior que seria temp
no exemplo abaixo, portanto meu diretório de trabalho é temp
.
mkdir -p temp/subdir
touch temp/subdir/keepthisfile.txt
touch temp/excludethisfile.txt
mkdir temp/.hidden
touch temp/.hidden/exclude.txt
cd temp/
Código eu tenho que conseguir o que eu quero é
zip -r temp.zip ../temp/ -x ../temp/excludethisfile.txt ../temp/.hidden/* ../temp/.hidden/
Ou mais concisa (sintaxe obtida de outro lugar on-line)
zip -r temp.zip ../temp/ -x ../temp/excludethisfile.txt ../temp/*.hidden*
Eu posso ver por que isso funcionaria, mas não consigo ver por que o código abaixo não faz a mesma coisa (por exemplo, eu preciso de ../temp/*.hidden*
em vez de apenas ../temp/.hidden*
?)
zip -r temp.zip ../temp/ -x ../temp/excludethisfile.txt ../temp/.hidden*