Eu tenho um projeto com muitas pastas / arquivos ocultos. Eu quero criar um arquivo zip, mas no arquivo não deve haver pastas / arquivos ocultos. Se os arquivos em uma pasta oculta não estiverem ocultos, eles também não deverão ser incluídos.
Eu sei que posso criar um arquivo zip de um diretório como este:
zip -r zipfile.zip directory
Também sei que posso excluir arquivos com a opção -x, então pensei que isso poderia funcionar:
zip -r zipfile.zip directory -x .*
Não deu certo. Todos os diretórios ocultos ainda estavam no arquivo zip.
command-line
zip
Martin Thoma
fonte
fonte
find community-chess/ -path '*/.*' -prune -o -type f -print | zip ~/community-chess.zip -@
) é mais longo que o esperado, mas funciona bem. Subdiretórios também estão incluídos, por isso +1 e uma resposta :-) aceitoAntes de tudo, se você não tiver instalado o zip, instale-o primeiro da seguinte maneira:
Então, simplesmente para criar um arquivo zip:
Se você deseja excluir arquivos ocultos:
Excluindo arquivos de um arquivo zip (extraído de http://osxdaily.com/2013/04/30/how-to-exclude-files-from-a-zip-archive/ )
fonte
Adicione
"
ao.*
(caso contrário, seu shell se expandirá.*
para os arquivos de ponto no diretório atual) e também exclua os arquivos ocultos nos subdiretórios:Isso resultará em arquivos começando com um arquivo a
.
não ser adicionado ao seu arquivo zip.fonte
.*
seria expandido pelo shell.*/.*
também.*
(*/
corresponde a qualquer sequência não-vazia de diretórios).Este inclui todos os "." diretórios, subdiretórios e "." arquivos ou diretórios dentro de diretórios ... Essencialmente a primeira resposta, mas inclui o nível superior "." arquivos.
fonte
Exemplo para excluir todas as pastas que começam com. :
Melhor comprimir, mas mais lento:
fonte
O método correto seria:
fonte
Ao compactar dirs, excluindo algumas extensões de arquivo:
fonte
Sem pastas e arquivos ocultos no diretório:
diretório:
|── .git │ ├── src │ └── Work.file ├── .test │ └── .file └── test.file
fonte