J'essaie de créer un fichier ZIP à l'aide de l' zip
outil de ligne de commande fourni avec le terminal Mac OS X. Je veux compresser récursivement le contenu du dossier actuel mais en excluant les .DS_Store
fichiers. J'essaie avec ça:
zip -r myarchive.zip . -x .DS_Store
Le -x .DS_Store
exclut le .DS_Store
fichier dans le dossier actuel, mais pas dans les sous-dossiers ajoutés récursivement. Comment puis-je également exclure tous les .DS_Store
fichiers de TOUS les sous-dossiers?
*
développe à rien ou à n'importe quelle partie d'un chemin, car zip compresse récursivement les fichiers et leurs répertoires. Ainsi,./.DS_Store
alors./*/.DS_Store
et ainsi de suite sont exclus de l'archive.La plupart du temps, je souhaite exclure tous les fichiers cachés, tels que
.DS_Store
ou.git
ou.gitignore
Avec une seule commande, vous pouvez prendre soin de tout cela et compresser tous les fichiers et sous-dossiers de manière récursive
zip -r archive.zip folder -x "*/\.*"
Ou encore mieux, créez une fonction dans zsh pour vous faciliter la vie
open ~/.zshrc
Ajoutez le code suivant dans votre section d'alias
Recharger la configuration zsh
source ~/.zshrc
Utilisez comme ça
zip-visible archive.zip folder
la source