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

Scripts/Batch Discussion :

Lister et copier les fichiers dans un répertoire bien spécifique


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Finance

    Informations forums :
    Inscription : Août 2012
    Messages : 2
    Par défaut Lister et copier les fichiers dans un répertoire bien spécifique
    Bonjour,
    je cherche à réaliser un script spécifique (en powershell ou batch).
    toute fois je précise que je suis débutant en informatique.

    le script que je cherche à réaliser doit avoir les fonctions suivante:
    Lister le contenu d un répertoire "répA" et les copier dans des répertoires bien précis

    ci dessous la structure du scripte désiré

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    $source = "C:\Users\ALKAHEST\Desktop\maquette\source\"
    $destination = "C:\Users\ALKAHEST\Desktop\maquette\destination\"
     
    $tableau_fichiers = _FileListToArrayEx ($source, "*", 1, "", False)
    	For $i = 1 to $tableau_fichiers [0]
    			$fichier = $tableau_fichiers [$i]
    			If not StringInStr($fichier, "300040248300010993550") = 0 Then
    				FileCopy ( $fichier , $destination & "Mr1" )
    			EndIf
    			If not StringInStr($fichier, "138070012931421042031") = 0 Then
    				FileCopy ( $fichier , $destination & "BCo" )
    			EndIf
    			If not StringInStr($fichier, "138070012931621183652") = 0 Then
    				FileCopy ( $fichier , $destination & "HJ" )
    			EndIf
    			If not StringInStr($fichier, "138070012930421967781") = 0 Then
    				FileCopy ( $fichier , $destination & "HT" )
    			EndIf
    			If not StringInStr($fichier, "300040248300011053884") = 0 Then
    				FileCopy ( $fichier , $destination & "Mr2" )
    			EndIf
    			If not StringInStr($fichier, "138070063636021648910") = 0 Then
    				FileCopy ( $fichier , $destination & "Mr2" )
    			EndIf
    			If not StringInStr($fichier, "300040248300011053981") = 0 Then
    				FileCopy ( $fichier , $destination & "SDISTRIBUTION" )
    			EndIf
    			If not StringInStr($fichier, "138070012931121368832") = 0 Then
    				FileCopy ( $fichier , $destination & "SIFLOM" )
    			EndIf
     
    	Next
    Cordialement .

  2. #2
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    get-childitem liste les dossiers et fichiers.
    La propriété PSIsContainer te permettra de sélectionner que les fichiers.
    La propriété Name te permettra de récupérer que le nom du fichier.

    L'opérateur Like te dira si une chaine de caractère est présente dans une autre.

    Et copy-item réalisera la copie de fichier.

    C'est toi qui as réalisé l'autoit que tu nous à présenté ?

  3. #3
    Nouveau candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Finance

    Informations forums :
    Inscription : Août 2012
    Messages : 2
    Par défaut
    Non ,je n ai pas le niveau.
    je peine déjà à comprendre les infos que tu m'as transmis

  4. #4
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Nous sommes la pour apprendre, non ?
    Si tu n'a pas les bases trouve un tuto pour débutant.

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Dordogne (Aquitaine)

    Informations forums :
    Inscription : Mars 2013
    Messages : 12
    Par défaut
    Bonsoir,

    dans un premier temps il te faut lister les fichiers de ton dossier avec Get-ChildItem qui te renvoi un tableau avec le nom de chacun des fichiers.

    Ensuite il te faut créer une boucle qui va lire ce table et faire un copier coller dans la destination avec Copy-Item.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $Source = "C:\Users\ALKAHEST\Desktop\maquette\source\"
    $Destination = "C:\Users\ALKAHEST\Desktop\maquette\destination\"
    
    $TableauFichier = Get-ChildItem -Path $Source | Select-Object Name
    
    foreach ($Fichier in $TableauFichier) {
      Copy-Item "$($Source)\$($Fichier.Name)" -Destination "$($Destination )\$($Fichier.Name)"
    }

Discussions similaires

  1. [Batch] Copie de fichiers dans un répertoire variable
    Par tarnx dans le forum Scripts/Batch
    Réponses: 7
    Dernier message: 08/06/2011, 11h25
  2. [AC-2010] Liste déroulante affichant les fichiers d'un répertoire du disque
    Par ToFind dans le forum VBA Access
    Réponses: 5
    Dernier message: 15/04/2011, 21h00
  3. [Regexp]Tous les fichiers dans des répertoires
    Par DonkeyMaster dans le forum Langage
    Réponses: 4
    Dernier message: 05/01/2011, 13h54
  4. [Upload] Copie de fichiers dans un répertoire
    Par san1981 dans le forum Langage
    Réponses: 3
    Dernier message: 30/07/2008, 21h29
  5. Lister les fichiers dans un répertoire
    Par lohot dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 30/03/2008, 12h55

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