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 :

Incrément de nom


Sujet :

Scripts/Batch

  1. #1
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Mai 2017
    Messages : 2
    Par défaut Incrément de nom
    Bonjour à tous,

    Je suis plutôt débutant en batch et comme je trouve ce langage amusant j'ai décidé de me lancer des petits défis. Or sur l'un d'eux, j'ai un petit problème. Je m'explique:

    J'ai créé un script qui dans un premier temps va chercher sur quel lecteur est branché ma clé USB (quelle lettre est associée à mon périphérique) en cherchant un certain fichier sur ma clé usb, une fois trouvé, le script va sauvegarder un dossier sur ma clé usb et générer un fichier de log de cette copie:
    Code bat : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for /F "tokens=3" %%I in ('echo list volume ^| diskpart ^| find /i "BCKP_TEST"') do (
      echo Backup will begin on disk %%I 
      xcopy /d /s /h /r /y /i "C:\Users\***\Documents\" "%%I:\Backup"  > %%I:\LOGBCKP\log.txt
    )

    Jusqu'ici tout va bien. Mon problème est que le fichier de log généré est écrasé à chaque nouvelle copie, or j'aimerais les conserver et pour cela il faudrait qu'à chaque backup le nom de mon fichier log soit incrémenté (log1.txt log2.txt etc...).

    Pouvez-vous me filer un petit coup de main svp?

    Merci

  2. #2
    Membre Expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Par défaut
    Salut,

    2 solutions :

    1: en utilisant un fichier de sauvegarde :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    @echo off
    
    ::On récupère la valeur du log
    
    set $val=1
    if exist val.txt set /p $val=<val.txt
    
    ::Ton code adapté
    for /F "tokens=3" %%I in ('echo list volume ^| diskpart ^| find /i "BCKP_TEST"') do (
      echo Backup will begin on disk %%I 
      xcopy /d /s /h /r /y /i "C:\Users\***\Documents\" "%%I:\Backup"  > %%I:\LOGBCKP\log.txt
      
      set /a $val+=1
      echo %$val% > val.txt
      )
    2 : en testant les logs existants :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    for /l %%a in (1=1=1000000) do if not exist log%%a.txt (
                              set "$val=%%a"
                              goto:next
                             )
    
    echo erreur
    exit/b
    
    :next
    
    for /F "tokens=3" %%I in ('echo list volume ^| diskpart ^| find /i "BCKP_TEST"') do (
      echo Backup will begin on disk %%I 
      xcopy /d /s /h /r /y /i "C:\Users\***\Documents\" "%%I:\Backup"  > %%I:\LOGBCKP\log%$val%.txt
    )



  3. #3
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Mai 2017
    Messages : 2
    Par défaut
    Super je te remercie pour le temps que tu m'as consacré, je m'en vais tester ça!

Discussions similaires

  1. [BATCH] Espaces dans les noms de fichiers :|
    Par andlio dans le forum Windows
    Réponses: 1
    Dernier message: 03/08/2006, 03h42
  2. incrémenter le nom une variable
    Par mederic dans le forum C
    Réponses: 15
    Dernier message: 06/05/2006, 19h11
  3. Réponses: 37
    Dernier message: 02/03/2006, 01h58
  4. Incrémenter le NOM d'une variable
    Par Mors_Ubyte dans le forum Access
    Réponses: 1
    Dernier message: 03/01/2006, 18h47
  5. Réponses: 2
    Dernier message: 08/07/2005, 10h40

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