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 plusieurs fichiers depuis plusieurs dossiers


Sujet :

Scripts/Batch

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    mars 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2010
    Messages : 13
    Points : 16
    Points
    16
    Par défaut Lister plusieurs fichiers depuis plusieurs dossiers
    Bonjour à tous,

    j'aimerai savoir s'il était possible de faire les actions ci-dessous depuis un script Powershell:

    1: via une boucle créer et renseigner un fichier liste.txt à partir d'une recherche de 16 fichiers horodatés à J-1 se trouvant dans 16 dossiers différents.
    2: de ce fichier liste, copier ces fichiers vers un dossier unique en les préfixant.
    3: mover les 16 fichiers d'origine,dans leur dossier d'archivage respectif.

    Pour le moment j'ai trouvé comment comment copier tous les fichiers horodatés à J-1 d'un seul répertoire vers un autre.

    Code PowerShell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $Datemoins1 = (get-date).AddDays(-1).ToString("yyyMMdd")
    foreach ($i in get-childitem C:\Temp | where {$_.Name -match "${Datemoins1}"}) {move-item -path $i -destination C:\Temp\ALL\}

    Si vous pouviez m'aider à réaliser ce script,merci d'avance.

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    mars 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2010
    Messages : 13
    Points : 16
    Points
    16
    Par défaut
    Re,

    j'ai trouvé comment lister les fichiers qu'il me faut,depuis une directory comportant plusieurs répertoires en excluant 1 fichier dont je n'ai pas besoin:

    Code PowerShell : Sélectionner tout - Visualiser dans une fenêtre à part
    $Files = Get-ChildItem "C:\Temp\" *$Datemoins1.csv -Recurse -Exclude "Yapa__$Datemoins1.csv"

    J'arrive à renommer des fichiers se trouvant dans un seul répertoire via la commande ci-dessous,mais pas depuis plusieurs répertoire avec ma variable $Files :

    Code PowerShell : Sélectionner tout - Visualiser dans une fenêtre à part
    (Get-ChildItem -File) | Rename-Item -NewName {$_.Name -replace "^","Yapa_"} -Exclude "Yapa__*$Datemoins1.csv

    Je cherche maintenant à utiliser la valeur de cette variable,pour les renommer,les copier dans leur sous répertoire respectif .\archive ,et les déplacer tous vers un seul autre répertoire unique.

    Pourriez vous m'aider svp ?

  3. #3
    Membre expert

    Homme Profil pro
    Responsable déploiement (SCCM, AirWatch, AMP)
    Inscrit en
    juillet 2014
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, AirWatch, AMP)
    Secteur : Transports

    Informations forums :
    Inscription : juillet 2014
    Messages : 1 864
    Points : 3 476
    Points
    3 476
    Par défaut
    1: via une boucle créer et renseigner un fichier liste.txt à partir d'une recherche de 16 fichiers horodatés à J-1 se trouvant dans 16 dossiers différents.
    Les 16 dossiers se trouvent t'ils dans un même dossier racine ou sont il éparpillés ? Comment définis tu ta recherche ? Y à t'il un pattern de correspondance possible ? Comment pouvons nous deviné ce qui est à exclure ?

    2: de ce fichier liste, copier ces fichiers vers un dossier unique en les préfixant.
    On copie les 16 dans un dossier en les préfixant de quoi ? Y a t'il un risque de doublon ? Doit on écraser si cela se produit ? Ou est définit ce dossier unique ?

    3: mover les 16 fichiers d'origine,dans leur dossier d'archivage respectif.
    Ou sont ces dossiers d'archivages respectifs ? Comment définit tu le lien entre la source et la destination ? Y a t'il une table de correspondance ?


    Je pense que la demande n'est pas assez précise pour que nous puissions t'apporter un quelconque bout de code qui puisse répondre à tes attentes.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    mars 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2010
    Messages : 13
    Points : 16
    Points
    16
    Par défaut
    Citation Envoyé par ericlm128 Voir le message
    Les 16 dossiers se trouvent t'ils dans un même dossier racine ou sont il éparpillés ? Comment définis tu ta recherche ? Y à t'il un pattern de correspondance possible ? Comment pouvons nous deviné ce qui est à exclure ?
    Comme je l'ai indiqué,les 16 fichiers se trouvent dans 16 sous-dossiers d'un répertoire racine.( 1 fichier par sous-répertoire)=> j'arrive à les lister et les envoyer dans une variable.Les caractères communs à ces 16 fichiers sont ${Datemoins1}.
    J'arrive à exclure le fichier dont je n'ai pas besoin : -Exclude "Yapa__$Datemoins1.csv".

    D'où ma commande :
    Code PowerShell : Sélectionner tout - Visualiser dans une fenêtre à part
    $Files = Get-ChildItem "C:\Temp\" *$Datemoins1.csv -Recurse -Exclude "Yapa__$Datemoins1.csv"

    On copie les 16 dans un dossier en les préfixant de quoi ? je voudrais qu'ils soient préfixés de "WYNP_"
    Y a t'il un risque de doublon ? Non aucun risque car les fichiers sont intégrés tous les jours.
    Doit on écraser si cela se produit ? celà ne peut pas arriver car jamais de doublon.
    Ou est définit ce dossier unique ? pour mon exemple de chemin,ca serait : C:\Temp\ALL


    Ou sont ces dossiers d'archivages respectifs ? Dans une arbo du type:

    C:\Temp\tata\archive
    C:\Temp\pepe\archive
    C:\Temp\subDir\archive

    Comment définit tu le lien entre la source et la destination ? qu'entends tu par lien ?
    Y a t'il une table de correspondance ? qu'entends tu par table de correspondance ?

Discussions similaires

  1. Lister des fichiers d'un dossier
    Par ychemla dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 14/09/2006, 14h54
  2. [PC] Lister les fichiers d'un dossier
    Par toto_in_th_sky dans le forum Cobol
    Réponses: 2
    Dernier message: 11/09/2006, 18h44
  3. Réponses: 13
    Dernier message: 24/08/2006, 14h05
  4. Lister les fichiers d'un dossier par page
    Par bwatex dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 17/08/2006, 20h09
  5. Réponses: 2
    Dernier message: 24/05/2006, 20h29

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