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 :

Renommer des fichiers dans différents répertoires [PowerShell]


Sujet :

Scripts/Batch

  1. #1
    Membre averti
    Homme Profil pro
    Technicien systèmes et réseaux
    Inscrit en
    Mai 2019
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Technicien systèmes et réseaux
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mai 2019
    Messages : 13
    Par défaut Renommer des fichiers dans différents répertoires
    Bonjour

    Je dois faire un script en PowerShell, dont la fonction est de renommer différents fichiers selon une nomenclature donnée.

    Les fichiers à renommer se présentent de cette façon

    Arborescence :
    Nom : Capture.JPG
Affichages : 172
Taille : 12,9 Ko

    Chaque fichier dans ces sous-dossiers s’appellera de cette façon
    Nom : Capture2.JPG
Affichages : 147
Taille : 16,7 Ko
    Nom : Capture3.JPG
Affichages : 150
Taille : 16,5 Ko

    Il faut que sur chaque dossier j'ajoute la date avant l'extension, et que je puisse le faire sur tous les fichiers

    J'ai déjà les lignes de commande qu'il me faut pour certains éléments
    Code PowerShell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $DateNow = Get-Date -Format "yyyyMMdd" #Date 20200701
    $FileName = [io.path]::GetFileNameWithoutExtension($SourceFilePath) #Récupère le nom du fichier uniquement
    $FileExtension = [io.path]::GetExtension($SourceFilePath) #Récupère l'extension du fichier uniquement
    Rename-Item -Path $SourceFilePath -newname $FileName$DateNow$FileExtension #Renommage du fichier

    Ce qui me pose problème c'est la sélection des fichiers à renommer dans une variable, et (ou) de réussir à boucler pour qu'il me les renomme

    En espérant avoir été assez claire sur ma problématique

    Par avance le scripting n'est pas mon point fort, je lutte pas mal, et ce genre d'exercice je le trouve intéressant à faire.

    Par avance merci de vos lumières

  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
    A voir ta structure tu pourrais faire ceci
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $DateNow = Get-Date -Format "yyyyMMdd" #Date 20200701
    Get-ChildItem -Path "C:\Test\*\*.pdf" | ForEach-Object {Rename-Item -LiteralPath $_.FullName -NewName ($_.BaseName + $DateNow + $_.Extension) -Force}

  3. #3
    Membre averti
    Homme Profil pro
    Technicien systèmes et réseaux
    Inscrit en
    Mai 2019
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Technicien systèmes et réseaux
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mai 2019
    Messages : 13
    Par défaut
    Citation Envoyé par ericlm128 Voir le message
    A voir ta structure tu pourrais faire ceci
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $DateNow = Get-Date -Format "yyyyMMdd" #Date 20200701
    Get-ChildItem -Path "C:\Test\*\*.pdf" | ForEach-Object {Rename-Item -LiteralPath $_.FullName -NewName ($_.BaseName + $DateNow + $_.Extension) -Force}
    LE TOP

    C'est simple c'est court c'est efficace

    MERCI !!!

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

Discussions similaires

  1. [Batch] renommer des fichier dans un répertoire
    Par ayanao dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 16/02/2010, 11h47
  2. lire le nom des fichiers dans un répertoire
    Par wonderboutin123 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/11/2007, 04h22
  3. Réponses: 4
    Dernier message: 21/08/2007, 10h40
  4. [] [Réseau] Renommer des fichiers dans un site FTP
    Par JerBi dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 22/08/2003, 00h35

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