Copier une arborescence en restreignant a certains fichiers
9 réponses
Olivier Miakinen
Bonjour,
J'utilise cygwin sous Windows. Il y une arborescence de répertoires et
de fichiers contenant à la fois des fichiers source (*.cpp et *.h) et
des fichiers générés (*.dll, *.exe, etc.) ainsi que plein d'autres trucs
qui ne m'intéressent pas particulièrement. Je voudrais faire une copie
de l'arborescence, mais en ne conservant que les fichiers se terminant
par les caractères « .h » ou « .cpp ». Quelle méthode me conseilleriez-
vous pour cela ? Utiliser tar ou cpio par exemple ?
Noter que si les répertoires sont conservés même s'ils ne contiennent
aucun des fichiers, ce n'est pas très grave, mais j'aimerais quand même
éliminer de la copie tous les répertoires CVS. Si ce n'est pas possible,
je les virerai après coup via un find.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Stephane CHAZELAS
2008-07-24, 12:58(+02), Olivier Miakinen:
J'utilise cygwin sous Windows. Il y une arborescence de répertoires et de fichiers contenant à la fois des fichiers source (*.cpp et *.h) et des fichiers générés (*.dll, *.exe, etc.) ainsi que plein d'autres trucs qui ne m'intéressent pas particulièrement. Je voudrais faire une copie de l'arborescence, mais en ne conservant que les fichiers se terminant par les caractères « .h » ou « .cpp ». Quelle méthode me conseilleriez- vous pour cela ? Utiliser tar ou cpio par exemple ?
[...]
Oui, ou pax en combinaison avec find (et eventuellement grep).
Note que ca ne marche que si tu peux garantir que les noms des fichiers ne contiennent pas de newline.
-- Stéphane
2008-07-24, 12:58(+02), Olivier Miakinen:
J'utilise cygwin sous Windows. Il y une arborescence de répertoires et
de fichiers contenant à la fois des fichiers source (*.cpp et *.h) et
des fichiers générés (*.dll, *.exe, etc.) ainsi que plein d'autres trucs
qui ne m'intéressent pas particulièrement. Je voudrais faire une copie
de l'arborescence, mais en ne conservant que les fichiers se terminant
par les caractères « .h » ou « .cpp ». Quelle méthode me conseilleriez-
vous pour cela ? Utiliser tar ou cpio par exemple ?
[...]
Oui, ou pax en combinaison avec find (et eventuellement grep).
Note que ca ne marche que si tu peux garantir que les noms des
fichiers ne contiennent pas de newline.
J'utilise cygwin sous Windows. Il y une arborescence de répertoires et de fichiers contenant à la fois des fichiers source (*.cpp et *.h) et des fichiers générés (*.dll, *.exe, etc.) ainsi que plein d'autres trucs qui ne m'intéressent pas particulièrement. Je voudrais faire une copie de l'arborescence, mais en ne conservant que les fichiers se terminant par les caractères « .h » ou « .cpp ». Quelle méthode me conseilleriez- vous pour cela ? Utiliser tar ou cpio par exemple ?
[...]
Oui, ou pax en combinaison avec find (et eventuellement grep).
Note que ca ne marche que si tu peux garantir que les noms des fichiers ne contiennent pas de newline.
-- Stéphane
Olivier Miakinen
Le 24/07/2008 13:05, Stephane CHAZELAS a écrit :
[...] Je voudrais faire une copie de l'arborescence, mais en ne conservant que les fichiers se terminant par les caractères « .h » ou « .cpp ». Quelle méthode me conseilleriez- vous pour cela ? Utiliser tar ou cpio par exemple ?
[...]
Oui, ou pax en combinaison avec find (et eventuellement grep).
Je ne connaissais pas cette commande, et malheureusement je ne la vois pas proposée en téléchargement pour cygwin. En revanche une recherche de pages man sur le web montre qu'elle sait utiliser un nombre assez respectable de formats d'archivage (bcpio, cpio, pax, tar, etc.). Bon, eh bien je pense que je vais utiliser cpio, dès que j'aurai fini de lire la doc.
Note que ca ne marche que si tu peux garantir que les noms des fichiers ne contiennent pas de newline.
Oui, les noms de fichiers sont assez sympas, ils ne contiennent en gros que les caractères [-_.a-zA-Z0-9] (et encore, pour les chiffres je ne suis même pas sûr qu'il y en ait).
Merci !
Le 24/07/2008 13:05, Stephane CHAZELAS a écrit :
[...] Je voudrais faire une copie
de l'arborescence, mais en ne conservant que les fichiers se terminant
par les caractères « .h » ou « .cpp ». Quelle méthode me conseilleriez-
vous pour cela ? Utiliser tar ou cpio par exemple ?
[...]
Oui, ou pax en combinaison avec find (et eventuellement grep).
Je ne connaissais pas cette commande, et malheureusement je ne la vois
pas proposée en téléchargement pour cygwin. En revanche une recherche
de pages man sur le web montre qu'elle sait utiliser un nombre assez
respectable de formats d'archivage (bcpio, cpio, pax, tar, etc.). Bon,
eh bien je pense que je vais utiliser cpio, dès que j'aurai fini de
lire la doc.
Note que ca ne marche que si tu peux garantir que les noms des
fichiers ne contiennent pas de newline.
Oui, les noms de fichiers sont assez sympas, ils ne contiennent en gros
que les caractères [-_.a-zA-Z0-9] (et encore, pour les chiffres je ne
suis même pas sûr qu'il y en ait).
[...] Je voudrais faire une copie de l'arborescence, mais en ne conservant que les fichiers se terminant par les caractères « .h » ou « .cpp ». Quelle méthode me conseilleriez- vous pour cela ? Utiliser tar ou cpio par exemple ?
[...]
Oui, ou pax en combinaison avec find (et eventuellement grep).
Je ne connaissais pas cette commande, et malheureusement je ne la vois pas proposée en téléchargement pour cygwin. En revanche une recherche de pages man sur le web montre qu'elle sait utiliser un nombre assez respectable de formats d'archivage (bcpio, cpio, pax, tar, etc.). Bon, eh bien je pense que je vais utiliser cpio, dès que j'aurai fini de lire la doc.
Note que ca ne marche que si tu peux garantir que les noms des fichiers ne contiennent pas de newline.
Oui, les noms de fichiers sont assez sympas, ils ne contiennent en gros que les caractères [-_.a-zA-Z0-9] (et encore, pour les chiffres je ne suis même pas sûr qu'il y en ait).
Merci !
Stephane CHAZELAS
2008-07-24, 13:32(+02), Olivier Miakinen:
Le 24/07/2008 13:05, Stephane CHAZELAS a écrit :
[...] Je voudrais faire une copie de l'arborescence, mais en ne conservant que les fichiers se terminant par les caractères « .h » ou « .cpp ». Quelle méthode me conseilleriez- vous pour cela ? Utiliser tar ou cpio par exemple ?
[...]
Oui, ou pax en combinaison avec find (et eventuellement grep).
Je ne connaissais pas cette commande, et malheureusement je ne la vois pas proposée en téléchargement pour cygwin. En revanche une recherche de pages man sur le web montre qu'elle sait utiliser un nombre assez respectable de formats d'archivage (bcpio, cpio, pax, tar, etc.). Bon, eh bien je pense que je vais utiliser cpio, dès que j'aurai fini de lire la doc.
pax est la commande standard POSIX/Unix qui remplace tar (qui a disparu de la SUS depuis la version 3) et cpio qui ne sont pas POSIX. Faudrait peut-etre suggerer aux gars de Cygwin de l'inclure.
-- Stéphane
2008-07-24, 13:32(+02), Olivier Miakinen:
Le 24/07/2008 13:05, Stephane CHAZELAS a écrit :
[...] Je voudrais faire une copie
de l'arborescence, mais en ne conservant que les fichiers se terminant
par les caractères « .h » ou « .cpp ». Quelle méthode me conseilleriez-
vous pour cela ? Utiliser tar ou cpio par exemple ?
[...]
Oui, ou pax en combinaison avec find (et eventuellement grep).
Je ne connaissais pas cette commande, et malheureusement je ne la vois
pas proposée en téléchargement pour cygwin. En revanche une recherche
de pages man sur le web montre qu'elle sait utiliser un nombre assez
respectable de formats d'archivage (bcpio, cpio, pax, tar, etc.). Bon,
eh bien je pense que je vais utiliser cpio, dès que j'aurai fini de
lire la doc.
pax est la commande standard POSIX/Unix qui remplace tar (qui a
disparu de la SUS depuis la version 3) et cpio qui ne sont pas
POSIX. Faudrait peut-etre suggerer aux gars de Cygwin de
l'inclure.
[...] Je voudrais faire une copie de l'arborescence, mais en ne conservant que les fichiers se terminant par les caractères « .h » ou « .cpp ». Quelle méthode me conseilleriez- vous pour cela ? Utiliser tar ou cpio par exemple ?
[...]
Oui, ou pax en combinaison avec find (et eventuellement grep).
Je ne connaissais pas cette commande, et malheureusement je ne la vois pas proposée en téléchargement pour cygwin. En revanche une recherche de pages man sur le web montre qu'elle sait utiliser un nombre assez respectable de formats d'archivage (bcpio, cpio, pax, tar, etc.). Bon, eh bien je pense que je vais utiliser cpio, dès que j'aurai fini de lire la doc.
pax est la commande standard POSIX/Unix qui remplace tar (qui a disparu de la SUS depuis la version 3) et cpio qui ne sont pas POSIX. Faudrait peut-etre suggerer aux gars de Cygwin de l'inclure.
-- Stéphane
Olivier Miakinen
Le 24/07/2008 13:43, Stephane CHAZELAS a écrit :
pax est la commande standard POSIX/Unix qui remplace tar (qui a disparu de la SUS depuis la version 3) et cpio qui ne sont pas POSIX. Faudrait peut-etre suggerer aux gars de Cygwin de l'inclure.
Apparemment la question n'est pas récente :
<http://www.cygwin.com/ml/cygwin/2004-11/msg00894.html> pax is in the package paxutils, which is not yet in cygwin. http://directory.fsf.org/paxutils.html [...] Note that paxutils includes unstable versions of tar and cpio. That might be the explanation why. </>
Traduction approximative : pax est dans le paquet paxutils qui n'est pas encore dans cygwin [...] Noter que paxutils inclut des versions instables de tar et cpio, ce qui pourrait expliquer.
Et en effet :
<http://directory.fsf.org/project/paxutils/> Paxutils The `paxutils' packages is an attempt to merge `cpio' with `tar' and add support for the related 'pax' commmand and format required by POSIX. It isn't production quality yet: only test versions are available. The current stable versions of 'cpio' and 'tar' are separately maintained, but the goal is to integrate them into 'paxutils.' Last updated 23 May, 2005 </>
En gros, il y est dit que seules des versions de test sont disponibles, et ceci date de 2005.
Le 24/07/2008 13:43, Stephane CHAZELAS a écrit :
pax est la commande standard POSIX/Unix qui remplace tar (qui a
disparu de la SUS depuis la version 3) et cpio qui ne sont pas
POSIX. Faudrait peut-etre suggerer aux gars de Cygwin de
l'inclure.
Apparemment la question n'est pas récente :
<http://www.cygwin.com/ml/cygwin/2004-11/msg00894.html>
pax is in the package paxutils, which is not yet in cygwin.
http://directory.fsf.org/paxutils.html
[...]
Note that paxutils includes unstable versions of tar and cpio. That
might be the explanation why.
</>
Traduction approximative : pax est dans le paquet paxutils qui n'est
pas encore dans cygwin [...] Noter que paxutils inclut des versions
instables de tar et cpio, ce qui pourrait expliquer.
Et en effet :
<http://directory.fsf.org/project/paxutils/>
Paxutils
The `paxutils' packages is an attempt to merge `cpio' with `tar' and add
support for the related 'pax' commmand and format required by POSIX. It
isn't production quality yet: only test versions are available. The
current stable versions of 'cpio' and 'tar' are separately maintained,
but the goal is to integrate them into 'paxutils.'
Last updated 23 May, 2005
</>
En gros, il y est dit que seules des versions de test sont disponibles,
et ceci date de 2005.
pax est la commande standard POSIX/Unix qui remplace tar (qui a disparu de la SUS depuis la version 3) et cpio qui ne sont pas POSIX. Faudrait peut-etre suggerer aux gars de Cygwin de l'inclure.
Apparemment la question n'est pas récente :
<http://www.cygwin.com/ml/cygwin/2004-11/msg00894.html> pax is in the package paxutils, which is not yet in cygwin. http://directory.fsf.org/paxutils.html [...] Note that paxutils includes unstable versions of tar and cpio. That might be the explanation why. </>
Traduction approximative : pax est dans le paquet paxutils qui n'est pas encore dans cygwin [...] Noter que paxutils inclut des versions instables de tar et cpio, ce qui pourrait expliquer.
Et en effet :
<http://directory.fsf.org/project/paxutils/> Paxutils The `paxutils' packages is an attempt to merge `cpio' with `tar' and add support for the related 'pax' commmand and format required by POSIX. It isn't production quality yet: only test versions are available. The current stable versions of 'cpio' and 'tar' are separately maintained, but the goal is to integrate them into 'paxutils.' Last updated 23 May, 2005 </>
En gros, il y est dit que seules des versions de test sont disponibles, et ceci date de 2005.
Stephane CHAZELAS
2008-07-24, 15:29(+02), Olivier Miakinen: [...]
<http://directory.fsf.org/project/paxutils/> Paxutils The `paxutils' packages is an attempt to merge `cpio' with `tar' and add support for the related 'pax' commmand and format required by POSIX. It isn't production quality yet: only test versions are available. The current stable versions of 'cpio' and 'tar' are separately maintained, but the goal is to integrate them into 'paxutils.' Last updated 23 May, 2005 </>
En gros, il y est dit que seules des versions de test sont disponibles, et ceci date de 2005.
Oui, mais il n'y a pas que GNU dans la vie. Il existe plusieurs implementations libres de pax. Celle qu'on trouve chez debian vient d'OpenBSD par exemple.
-- Stéphane
2008-07-24, 15:29(+02), Olivier Miakinen:
[...]
<http://directory.fsf.org/project/paxutils/>
Paxutils
The `paxutils' packages is an attempt to merge `cpio' with `tar' and add
support for the related 'pax' commmand and format required by POSIX. It
isn't production quality yet: only test versions are available. The
current stable versions of 'cpio' and 'tar' are separately maintained,
but the goal is to integrate them into 'paxutils.'
Last updated 23 May, 2005
</>
En gros, il y est dit que seules des versions de test sont disponibles,
et ceci date de 2005.
Oui, mais il n'y a pas que GNU dans la vie. Il existe plusieurs
implementations libres de pax. Celle qu'on trouve chez debian
vient d'OpenBSD par exemple.
<http://directory.fsf.org/project/paxutils/> Paxutils The `paxutils' packages is an attempt to merge `cpio' with `tar' and add support for the related 'pax' commmand and format required by POSIX. It isn't production quality yet: only test versions are available. The current stable versions of 'cpio' and 'tar' are separately maintained, but the goal is to integrate them into 'paxutils.' Last updated 23 May, 2005 </>
En gros, il y est dit que seules des versions de test sont disponibles, et ceci date de 2005.
Oui, mais il n'y a pas que GNU dans la vie. Il existe plusieurs implementations libres de pax. Celle qu'on trouve chez debian vient d'OpenBSD par exemple.
-- Stéphane
Olivier Miakinen
Le 24/07/2008 15:50, Stephane CHAZELAS a écrit :
En gros, il y est dit que seules des versions de test sont disponibles, et ceci date de 2005.
Oui, mais il n'y a pas que GNU dans la vie.
Dans la vie non, mais dans cygwin on dirait que si :
<http://cygwin.com/faq/faq-nochunks.html#faq.what> The Cygwin tools are ports of the popular GNU development tools for Microsoft Windows. </>
Il existe plusieurs implementations libres de pax. Celle qu'on trouve chez debian vient d'OpenBSD par exemple.
Je ne suis pas assez à l'aise en anglais pour tenter d'argumenter en faveur de l'utilisation d'un outil OpenBSD dans Cygwin. D'autant plus que si la réponse n'est pas « non » ce sera certainement « fais-le toi-même », et que je n'ai pas non plus le temps de m'y plonger.
Tant pis... pour le moment je vais me contenter de cpio, je passerai à pax lorsqu'il sera disponible en standard.
Le 24/07/2008 15:50, Stephane CHAZELAS a écrit :
En gros, il y est dit que seules des versions de test sont disponibles,
et ceci date de 2005.
Oui, mais il n'y a pas que GNU dans la vie.
Dans la vie non, mais dans cygwin on dirait que si :
<http://cygwin.com/faq/faq-nochunks.html#faq.what>
The Cygwin tools are ports of the popular GNU development tools for
Microsoft Windows.
</>
Il existe plusieurs
implementations libres de pax. Celle qu'on trouve chez debian
vient d'OpenBSD par exemple.
Je ne suis pas assez à l'aise en anglais pour tenter d'argumenter en
faveur de l'utilisation d'un outil OpenBSD dans Cygwin. D'autant plus
que si la réponse n'est pas « non » ce sera certainement « fais-le
toi-même », et que je n'ai pas non plus le temps de m'y plonger.
Tant pis... pour le moment je vais me contenter de cpio, je passerai
à pax lorsqu'il sera disponible en standard.
En gros, il y est dit que seules des versions de test sont disponibles, et ceci date de 2005.
Oui, mais il n'y a pas que GNU dans la vie.
Dans la vie non, mais dans cygwin on dirait que si :
<http://cygwin.com/faq/faq-nochunks.html#faq.what> The Cygwin tools are ports of the popular GNU development tools for Microsoft Windows. </>
Il existe plusieurs implementations libres de pax. Celle qu'on trouve chez debian vient d'OpenBSD par exemple.
Je ne suis pas assez à l'aise en anglais pour tenter d'argumenter en faveur de l'utilisation d'un outil OpenBSD dans Cygwin. D'autant plus que si la réponse n'est pas « non » ce sera certainement « fais-le toi-même », et que je n'ai pas non plus le temps de m'y plonger.
Tant pis... pour le moment je vais me contenter de cpio, je passerai à pax lorsqu'il sera disponible en standard.
Jacques L'helgoualc'h
Le 24-07-2008, Olivier Miakinen a écrit : [...]
Tant pis... pour le moment je vais me contenter de cpio, je passerai à pax lorsqu'il sera disponible en standard.
répond à la question (avec en réseau transfert des seuls changements). -- Jacques L'helgoualc'h
Matthieu Moy
Olivier Miakinen <om+ writes:
Bonjour,
J'utilise cygwin sous Windows. Il y une arborescence de répertoires et de fichiers contenant à la fois des fichiers source (*.cpp et *.h) et des fichiers générés (*.dll, *.exe, etc.) ainsi que plein d'autres trucs qui ne m'intéressent pas particulièrement. Je voudrais faire une copie de l'arborescence, mais en ne conservant que les fichiers se terminant par les caractères « .h » ou « .cpp ». Quelle méthode me conseilleriez- vous pour cela ? Utiliser tar ou cpio par exemple ?
J'utilise cygwin sous Windows. Il y une arborescence de répertoires et
de fichiers contenant à la fois des fichiers source (*.cpp et *.h) et
des fichiers générés (*.dll, *.exe, etc.) ainsi que plein d'autres trucs
qui ne m'intéressent pas particulièrement. Je voudrais faire une copie
de l'arborescence, mais en ne conservant que les fichiers se terminant
par les caractères « .h » ou « .cpp ». Quelle méthode me conseilleriez-
vous pour cela ? Utiliser tar ou cpio par exemple ?
J'utilise cygwin sous Windows. Il y une arborescence de répertoires et de fichiers contenant à la fois des fichiers source (*.cpp et *.h) et des fichiers générés (*.dll, *.exe, etc.) ainsi que plein d'autres trucs qui ne m'intéressent pas particulièrement. Je voudrais faire une copie de l'arborescence, mais en ne conservant que les fichiers se terminant par les caractères « .h » ou « .cpp ». Quelle méthode me conseilleriez- vous pour cela ? Utiliser tar ou cpio par exemple ?