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 un répertoire en y ajoutant la date


Sujet :

Scripts/Batch

  1. #1
    Membre régulier
    Homme Profil pro
    Retraité Ing Electronique
    Inscrit en
    Mars 2004
    Messages
    369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Retraité Ing Electronique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2004
    Messages : 369
    Points : 121
    Points
    121
    Par défaut Renommer un répertoire en y ajoutant la date
    Bonjour,

    Savez vous si un batch peut renommer automatiquement le nom d'un répertoire en lui ajoutant la date du jour ?

    Merci

  2. #2
    Membre éprouvé
    Homme Profil pro
    Développeur .NET en devenir
    Inscrit en
    Août 2017
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur .NET en devenir
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2017
    Messages : 546
    Points : 1 084
    Points
    1 084
    Par défaut
    Bonjour,

    Oui c'est possible, par exemple :

    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    @echo off
    setlocal enableextensions disabledelayedexpansion
    ver | find "10.0." >nul && chcp 65001 >nul || chcp 28591 >nul
     
    set "jour=%date:/=-%"
     
    for /f "delims=" %%A in ('dir /b /ad') do move "%%~fA" "%jour% %%~A"
     
    pause

    Ce script va renommer tous les dossiers présents dans le même répertoire.

  3. #3
    Membre régulier
    Homme Profil pro
    Retraité Ing Electronique
    Inscrit en
    Mars 2004
    Messages
    369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Retraité Ing Electronique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2004
    Messages : 369
    Points : 121
    Points
    121
    Par défaut
    Merci Barnabe,

    Désolé je ne suis pas un champion de la programmation batch et j'avoue ne pas comprendre le script.
    Peux tu m'expliquer ?

    Merci

  4. #4
    Membre éprouvé
    Homme Profil pro
    Développeur .NET en devenir
    Inscrit en
    Août 2017
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur .NET en devenir
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2017
    Messages : 546
    Points : 1 084
    Points
    1 084
    Par défaut
    Je vais tenter d'expliquer :

    1)
    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    ver | find "10.0." >nul && chcp 65001 >nul || chcp 28591 >nul
    permet de définir l'encodage de caractères à utiliser en fonction de la version de Windows ( 65001 pour Windows 10 ), pour faire simple c'est pour permettre une gestion correcte des caractères accentués et caractères spéciaux.


    2)
    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    set "jour=%date:/=-%"
    définit une variable nommée "jour" qui correspond à la date du jour à laquelle on remplace le caractère / par un trait d'union car on ne peut pas utiliser / dans un nom de dossier ou de fichier.


    3) la boucle FOR associée à la commande DIR permet de lister tous les dossiers et d'appliquer une action à chacun d'eux, en l'occurrence un renommage à l'aide de la commande MOVE.

Discussions similaires

  1. Réponses: 5
    Dernier message: 13/08/2013, 15h12
  2. Réponses: 3
    Dernier message: 04/12/2007, 12h22
  3. batch listeur de répertoires bogué
    Par blackaagony dans le forum Scripts/Batch
    Réponses: 5
    Dernier message: 30/07/2007, 09h27
  4. Réponses: 4
    Dernier message: 01/08/2006, 08h34
  5. [batch] renommer un fichier avec la date
    Par arcane dans le forum Windows
    Réponses: 3
    Dernier message: 13/05/2005, 14h32

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