J'ai besoin de compresser un répertoire en excluant certains sous-répertoires et fichiers; J'ai utilisé ceci:
zip -r zipfile.zip . -x ".*" -x "app/bower_components" -x "node_modules" -x "*.zip" -x "node_modules"
sans succès; node_modules
est un dossier dans le principal alors qu'il bower_components
est dans l'application de dossier
Réponses:
Je devine simplement ce que vous voulez.
exclure tous les fichiers commençant par un point
fais comme:
exclure tous les fichiers (avec un point dans le nom du fichier)
fais comme:
-
exclure ce répertoire et tous les fichiers qu'il contient
fais comme:
-
exclure tous les fichiers zip
fais comme:
Vous excluez node_modules deux fois
la source
Quelque chose comme ça devrait faire l'affaire:
Où suit
-x
est une liste de répertoires et de types de fichiers (extension) à exclure.la source
**\*
c'est pour l'exclusion récursive. Merci beaucoup.En supposant que votre répertoire est un référentiel git (et à en juger par la question, il est très probable), vous pouvez ajouter des répertoires que vous souhaitez exclure au
.gitignore
fichier et utiliser lagit archive
commande pour compresser le contenu de votre répertoire:Dans votre exemple, le
.gitignore
fichier devrait ressembler à ceci:la source
Cela fonctionne parfaitement pour moi sur Ubuntu 16.04:
la source
dans chaque projet, ignorez node_modules comme ceci:
la source