IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration système Discussion :

Copier tout sauf *.svn/*


Sujet :

Administration système

  1. #1
    Membre éclairé Avatar de nako
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    août 2003
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : août 2003
    Messages : 577
    Points : 652
    Points
    652
    Par défaut Copier tout sauf *.svn/*
    Bonjour à tous,
    j'espère que je suis dans le bon forum, j'aihésité avec programmation.
    N'hésitez pas à me déplacer si je me suis planté.
    Voilà mon problème :
    J'ai un petit script qui fait un certain nombre d'opération, et entre autres qui copie un ensemble de fichiers dans un autre endroit.
    Or, le répertoire mydir est sous controle de version (subversion) et donc il me copie aussi tous les fichiers d'administration présent dans chaque répertoire (.svn/).

    Ma question est donc : existe-t-il une commande pour lui dire de ne pas copier les fichiers qui ressemblent à *.svn/* ?

    Je suis sur que ça doit exister, mais j'avoue que je ne connais que les bases des commandes unix/linux.
    Merci d'avance, Nako

  2. #2
    Membre expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : septembre 2004
    Messages : 2 177
    Points : 3 166
    Points
    3 166
    Par défaut
    Je ne suis pas sûr qu'il existe des possibilités d'exclusion à la copie de fichier par la commande cp, mais cela reste gérable par la commande find :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    find mydir ! -name "*.svn" -type f -exec cp --parents {} mydest \;
    Ainsi, on recherche tous les fichiers qui ne sont pas en .svn et on les copie d'un répertoire à l'autre, en recréant les répertoires parents au besoin ...

    Bon courage.
    La FAQ Perl est par ici
    : La fonction "Rechercher", on aurait dû la nommer "Retrouver" - essayez et vous verrez pourquoi !

  3. #3
    Membre éclairé Avatar de nako
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    août 2003
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : août 2003
    Messages : 577
    Points : 652
    Points
    652
    Par défaut
    Merci pour ta réponse.
    Je vais essayer de creuser un peu cette ligne de commande (que j'ai un peu de mal à comprendre !).

    Les {}, c'est pour quoi ?
    Ca prend pour valeur le résultat du find ? c'est ça ?

    Merci, nako.

  4. #4
    Membre expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : septembre 2004
    Messages : 2 177
    Points : 3 166
    Points
    3 166
    Par défaut
    Citation Envoyé par nako
    Les {}, c'est pour quoi ?
    Ca prend pour valeur le résultat du find ? c'est ça ?
    Oui, c'est ça
    La FAQ Perl est par ici
    : La fonction "Rechercher", on aurait dû la nommer "Retrouver" - essayez et vous verrez pourquoi !

  5. #5
    Membre éclairé Avatar de nako
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    août 2003
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : août 2003
    Messages : 577
    Points : 652
    Points
    652
    Par défaut
    Ok, merci, c'est bien ce qui me semblait.
    Par contre, en tapant la commande que tu m'a donné, il me sort quand même les .svn :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    find /home/nako/dev/proj/ ! -name "*.svn" -type f
    me renvoit par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    /home/nako/dev/proj/readme.txt
    /home/nako/dev/proj/modules
    /home/nako/dev/proj/modules/.svn
    /home/nako/dev/proj/modules/.svn/text-base
    /home/nako/dev/proj/modules/.svn/format
    /home/nako/dev/proj/modules/module1.txt
    /home/nako/dev/proj/modules/module2.txt
    /home/nako/dev/proj/modules/module3.txt
    etc ...
    Si vous voyez ce qui cloche ...
    Merci.
    ,nako

  6. #6
    Membre expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : septembre 2004
    Messages : 2 177
    Points : 3 166
    Points
    3 166
    Par défaut
    Citation Envoyé par nako
    Si vous voyez ce qui cloche ...
    Oui, ne connaissant pas subversion, je croyais qu'il s'agissait de fichiers toto.svn, titi.svn, etc. Je ne croyais pas qu'il s'agissait d'un répertoire caché ...

    Une solution est de remplacer la recherche par nom par une recherche par motif :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    find /home/nako/dev/proj/ ! -regex ".*/\.svn/.*" -type f ...
    Bon courage.
    La FAQ Perl est par ici
    : La fonction "Rechercher", on aurait dû la nommer "Retrouver" - essayez et vous verrez pourquoi !

  7. #7
    Membre éclairé Avatar de nako
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    août 2003
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : août 2003
    Messages : 577
    Points : 652
    Points
    652
    Par défaut
    Yes ! merci beaucoup, ça marche nickel.
    Résolu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] Copier toutes les cellules sauf une
    Par tioch dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 02/08/2011, 10h16
  2. [Tableaux] copier tout un array dans une autre variable
    Par XavierWRC dans le forum Langage
    Réponses: 3
    Dernier message: 06/01/2010, 17h07
  3. SELECT "tout sauf champs xx, yy..."
    Par _marabout dans le forum Requêtes
    Réponses: 7
    Dernier message: 21/01/2008, 17h42
  4. copier tout un dossier
    Par diabgolo dans le forum C
    Réponses: 3
    Dernier message: 26/07/2006, 18h54
  5. Réponses: 3
    Dernier message: 17/01/2006, 14h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo