comment puis-je zip toute une arborescence de dossiers dans unix, mais seulement certains fichiers?
J'ai été coincé sur une petite ligne de commande unix problème.
J'ai un site web dossier (4 go) j'ai besoin de récupérer une copie de l', mais juste le .php, .html, .js et .les fichiers css (qui est à seulement quelques centaines de ko).
Je pense idéalement, il existe un moyen de zip ou tar d'un dossier complet, mais seulement de l'accaparement certaines extensions de fichiers, tout en conservant les structures sous-dossier. Est-ce possible et si oui, comment?
Je n'ai essayez de faire tout un zip, puis allez à travers et à l'exclusion de certains fichiers, mais il semblait un peu excessif.
Je suis un peu nouveau pour unix.
Toutes les idées seraient grandement appréciés.
- Vous pouvez obtenir de meilleurs résultats si vous vous demandez ce sur serverfault.com (un sysadmin site spécifique)
Vous devez vous connecter pour publier un commentaire.
Basculer dans le site web de dossier, puis exécutez
Vous pouvez également l'exécuter à partir de l'extérieur du site dossier:
zip
et vous allez finir avec les fichiers correspondants dans le répertoire courant.Vous pouvez utiliser
find
etgrep
générer la liste des fichiers, puis de la pipe que danszip
par exemple
(
-@
dit zip pour lire une liste de fichiers à partir de stdin)find . -iname \*.html -o -iname \*.css -o -iname \*.js -o -iname \*.php
au lieu defind . | grep ...
.C'est comment j'ai réussi à le faire, mais j'aime aussi ghostdog74 de la version.
Vous pouvez ajouter des extensions supplémentaires en les ajoutant à l'expression régulière.
J'ai bien aimé la réponse de Nick, mais, puisque c'est une programmation de site, pourquoi ne pas utiliser Ant pour ce faire. 🙂
Ensuite, vous pouvez mettre dans un paramètre de sorte que les différents types de fichiers peuvent être zippée.
http://ant.apache.org/manual/Tasks/zip.html
vous souhaiterez peut-être utiliser find(GNU) pour trouver tous vos php,html etc fichiers.ensuite le goudron jusqu'
après cela, vous pouvez zipper
Vous pouvez écrire un script shell pour copier des fichiers sur la base d'un modèle d'expression dans un nouveau dossier, le code postal du contenu et ensuite supprimer le dossier. Maintenant, comme pour la syntaxe de lui, malade de quitter que pour vous :D.