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

Windows Discussion :

Batch - Choisir un fichier par date de création


Sujet :

Windows

  1. #1
    Inactif Avatar de Lorponos
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 243
    Points : 85
    Points
    85
    Par défaut Batch - Choisir un fichier par date de création
    Bonjour, je suis en train de créer mon batch de sauvegardes qui compresse les répertoire source vers un répertoire de destination qui recueille donc toutes les archives compressés de tout des répertoire sauvegarder, j’utilise les variables %Date% et %Time% dans les noms des d’archives pour ne pas écraser les anciennes archives, maintenant il faut que je rajoute à mon batch une option pour restaurer les dernières sauvegardes, donc il faut que je fasse un code qui vérifie les dernières sauvegardes par dates de création pour ne restaurer que les dernières archive vu que certaine archive seront en double ou en triple avec une date différente dans les noms, mais le je n’ai pas d’idée, quelqu’un aurait-il une piste ?

  2. #2
    Inactif Avatar de Lorponos
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 243
    Points : 85
    Points
    85
    Par défaut
    Personne ne peut m'aider ?

  3. #3
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Place le code existant, j'ai un peu de mal à comprendre le pb

  4. #4
    Inactif Avatar de Lorponos
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 243
    Points : 85
    Points
    85
    Par défaut
    Bonjour laurent

    Ben je n'ai pas encore de code pour choisir un fichier par date de création, j'ai juste un code qui copie un fichier en ajoutant la date dans le nom:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     Set dateTmp=%date:~0,2%-%date:~3,2%-%date:~6,4%
    copi "fichier.dll" "%Destination%\fichier_%dateTmp%.dll"
    Donc il y a souvent plusieurs sauvegardes dans le répertoire de destination, je voudrais pouvoir faire la copie dans le sens inverse en recherchant le dernier fichier sauvegarder.

  5. #5
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Le calcul et parsing n'est pas aisé avec les batch.
    Le mieux est peut être de trouver une incrémentation de l'extension
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Date-nomfichier.ext.000
    ici tu trouveras deux éxécutables (chapitre installation) qui peuvent t'aider, à moins que tu veuilles le coder en batch.

  6. #6
    Inactif Avatar de Lorponos
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 243
    Points : 85
    Points
    85
    Par défaut
    Je préfére tout faire en batch

  7. #7
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Bon dev alors !
    Utilise l'approche de numérotation de l'extension .000 tu te simplifieras la vie je pense
    Voilà un début :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    @echo off
    set /A count=0
    :Loop
    if exist %file%.%count% goto suite
    if not exist %file%.%count% set /a count+=1
     
    if /I %count% LSS 10 set ext=00%count%
    if /I %count% GEQ 10 set ext=0%count%
    if /I %count% GEQ 100 set ext=%count%
    if /I %count% EQU 999 set /A count=0 Rem Ajout du cas où il existe 0-999 fichiers
    goto loop
    :suite

  8. #8
    Inactif Avatar de Lorponos
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 243
    Points : 85
    Points
    85
    Par défaut
    Merci beaucoup pour cette astuce mais je préfère garder la date parce que ça me sert aussi pour savoir quand j'ai fait les dernières sauvegardes, je sauvegarde tellement de fichiers et de répertoire.

  9. #9
    Inactif Avatar de Lorponos
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 243
    Points : 85
    Points
    85
    Par défaut
    Peut être est il possible de choisir l'archive par la date référencer dans les propriété de l'archive, si quelqu'un pourait m'éclairer ?


  10. #10
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Lorponos
    je préfère garder la date
    J'ai bien compris, à toi de l'adapter avec ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "%Destination%\fichier_%dateTmp%.dll"
    Je n'ai pas précisé que %file% était identique à fichier_%dateTmp%.
    l'étape suivant si tu suis ma proposition est d'ajouter un numéro d'extension :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "%Destination%\fichier_%dateTmp%.dll.000"
    Tu connais ainsi le dernier + facilement. Par contre si tu modifies la date du pc avec une date passée c'est sûr que ma proposition ne vaut pas un clou !
    Enfin les batch c'est pas la panacée pour faire de la sauvegarde.
    Tu peux utiliser backup.exe si tu es sous XP.

    [edit]
    Pour ta dernière question

  11. #11
    Inactif Avatar de Lorponos
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 243
    Points : 85
    Points
    85
    Par défaut
    Merci encore, je vais essayer avec ça

Discussions similaires

  1. Réponses: 8
    Dernier message: 27/10/2011, 16h46
  2. tri de fichier par date de création
    Par seveldan dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 02/02/2011, 08h37
  3. Réponses: 5
    Dernier message: 10/05/2010, 11h46
  4. BATCH DOS +AUTO DELETE Fichiers selon date de création
    Par FredericManche dans le forum Scripts/Batch
    Réponses: 5
    Dernier message: 17/02/2010, 15h59
  5. Réponses: 5
    Dernier message: 18/04/2007, 11h22

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