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

Linux Discussion :

[Débutant] Comportement du cp récursif


Sujet :

Linux

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 63
    Par défaut [Débutant] Comportement du cp récursif
    Bonjour à tous !

    J'ai un petit problème, tout simple je pense, avec le cp... En gros, quand je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cp -r Dossier1 Dossier2
    Il peut y avoir deux résultats différents...

    1) Si Dossier2 n'existe pas, ça le crée, et ça copie tous les fichiers contenus dans Dossier1 dans Dossier2
    2) Si Dossier2 existe, ça crée Dossier2/Dossier1, et ça copie tous les fichiers de Dossier1 dans Dossier2/Dossier1

    Savez-vous s'il existe un moyen (option ou autre) pour que le comportement soit le même, que le répertoire cible existe ou pas svp ?

    Merci d'avance !

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 34
    Par défaut
    Bonjour

    Peut-être l'option -T ?

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 63
    Par défaut
    J'ai pas l'option -T

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 63
    Par défaut
    Bon en gros j'ai feinté :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     if [[ -d $dest ]]
    then
       cp -r $source/* $dest
    else
       cp -r $source $dest
    fi

  5. #5
    Membre confirmé Avatar de Mayhem555
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 89
    Par défaut
    Si ton dossier de destination n'existe pas, on peut aussi le créer :



    (c'est quand même plus rapide que de coder en bash, mais moins pédagogue, j'avoue !)

  6. #6
    Membre chevronné Avatar de KindPlayer
    Profil pro
    Inscrit en
    Février 2007
    Messages
    471
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 471
    Par défaut meme mieux
    mkdir -p repertoire qui ne fera rien sir le dossier existe deja il me semble

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 34
    Par défaut
    Citation Envoyé par WerKa Voir le message
    Bon en gros j'ai feinté :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     if [[ -d $dest ]]
    then
       cp -r $source/* $dest
    else
       cp -r $source $dest
    fi
    C'est en fait ce que tu obtiendrais avec l'option -T

    J'ignore pourquoi tu ne l'as pas. Voici la version que j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $ cp --version
    cp (GNU coreutils) 6.10

  8. #8
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 840
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par WerKa Voir le message
    Bonjour à tous !

    J'ai un petit problème, tout simple je pense, avec le cp... En gros, quand je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cp -r Dossier1 Dossier2
    Il peut y avoir deux résultats différents...

    1) Si Dossier2 n'existe pas, ça le crée, et ça copie tous les fichiers contenus dans Dossier1 dans Dossier2
    2) Si Dossier2 existe, ça crée Dossier2/Dossier1, et ça copie tous les fichiers de Dossier1 dans Dossier2/Dossier1

    Savez-vous s'il existe un moyen (option ou autre) pour que le comportement soit le même, que le répertoire cible existe ou pas svp ?

    Merci d'avance !
    Pour faire chauffer un oeuf, 2 solutions selon qu'on possède une casserole d'eau froide ou chaude
    - avec la casserole d'eau froide, mettre la casserole sur le feu. une fois la température atteinte, mettre l'oeuf dans l'eau
    - avec la casserole d'eau chaude, attendre qu'elle refroidisse pour se ramener au cas ci-dessus

    Pour ta solution => "rm -rf Dossier2 ; cp -r Dossier1 Dossier2"
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 01/09/2009, 16h34
  2. Réponses: 2
    Dernier message: 29/11/2006, 11h43
  3. [sql server 2000] Procédure stockée ~ Récursif (débutant)
    Par Sadneth dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 06/02/2006, 11h16
  4. Réponses: 7
    Dernier message: 26/06/2005, 12h32
  5. XPATH XSL Récursif (très débutant!)
    Par luta dans le forum XSL/XSLT/XPATH
    Réponses: 14
    Dernier message: 24/08/2004, 10h04

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