7
votes

Sur Linux, comment copiez-moi récursivement des fichiers tout en ignorant certains noms?

J'ai besoin de copier récursivement un arborescence de répertoires, en ignorant les sous-répertoires nommés "CVS". Y a-t-il un moyen simple de faire cela?


2 commentaires

Cela appartient soit sur serveurfault ou superutilisateur.


Il est marqué "Scrips", donc c'est bon ici.


3 Réponses :


9
votes
tar -cpf - --exclude=CVS directory | sh -c 'cd /wherever/it/goes && tar -xpf -'
Modify the right-hand tar's options to -xvpf if you'd like to see what's going on.

1 commentaires

Je changerais le ";" là-bas à "&&" de sorte que s'il y a une faute de frappe dans le chemin, les fichiers ne se retrouveront pas au mauvais endroit.



7
votes

Pourquoi ne pas l'approcher d'un angle légèrement différent et consultez les fichiers de CVS à l'aide de la commande exportation.

Cela vous donnera les annuaires sans aucun des artefacts CVS.


0 commentaires

14
votes
rsync -av --exclude=CVS <src> <dst>

1 commentaires

C'est définitivement la bonne réponse. Il cherchait une copie directe de Linux à l'exclusion d'un motif. rsync est la voie à suivre> cp