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] Sauvegarde de fichiers avec pkzip


Sujet :

Windows

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2004
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 137
    Points : 63
    Points
    63
    Par défaut [BATCH] Sauvegarde de fichiers avec pkzip
    Bonjour,

    Je souhaite sauvegarder quotidiennement des fichiers d'utilisateurs et les compresser avec pkzip.
    Pas de problème lorsque les fichiers sont tous dans le même dossier.
    Si les fichiers sont dans des dossiers connus, pas de problème non plus, avec le fichier de liste @listfile.txt de pkzip.

    Mon problème : je dois sauvegarder tous les fichiers de tous les sous-dossiers d'un dossier. Et comme certains de ces sous-dossiers sont créés le jour même et que je n'en connais pas le nom, je ne peux pas les inscrire le @listfile.txt...

    Bref, il faudrait que j'arrive à créér un dossier qui contiendrait tous les fichiers qui m'intéressent. Tous les fichiers de ce dossiers seraient ensuite passer à la moulinette de pkzip.
    Comment copier dans un dossier (sans sous-dossier) tous les fichiers de tous les sous-dossiers d'une source, sans respecter l'arborescence ?

    J'espère que ce n'est pas trop confus... Merci d'avance !

  2. #2
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Peut être que si tu utiliser plutot 7-zip ca serai plus simple

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2004
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 137
    Points : 63
    Points
    63
    Par défaut
    HOua la bourde !!!
    J'utilise 7-zip en ligne de commande !

    Mais je n'arrivais pas à faire que 7-zip me compresse un répertoire entier avec ses sous-dossiers. Il ne compressait que les fichiers du dossier en question et ne s'occupe pas des sous-dossiers...

    Mais je viens de trouver le commutateur -r qui "balaye" les sous-répertoires. Et ça fonctionne plutôt bien.

    Par contre, dans l'idéal, je n'ai pas besoin de tous les sous-répertoires. En passant pas list file, j'obtiens le message "Invalid Wildcard". Le truc que j'ai trouvé est de faire plusieurs lignes de 7z mais ce n'est pas propre.

    Le code du batch qui fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    @echo OFF
    
    REM Définition de la date du jour au format jj-mm-aaaa
    for /f "tokens=1-2 " %%A in ('DATE /T') do set date=%%B
    for /f "tokens=1-3 delims=/" %%A in ('echo %DATE%') do set date=%%A-%%B-%%C
    
    REM Copie des dossiers à sauvegarder dans un dossier compressé unique et à la date du jour
    7z a -tzip savSA-%date%.zip -r c:\Dossier1\sous-dossier1\*.*
    7z a -tzip savSA-%date%.zip -r c:\Dossier2\sous-dossier2\*.*
    
    @exit
    Le texte du listfile.txt quand je remplace le chemin par @listfile.txt dans le batch :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    "c:\Dossier1\sous-dossier1\*.*"
    "c:\Dossier2\sous-dossier2\*.*"
    Une idée de la solution ? Enlever le caractère * en fin de ligne ne marche pas non plus...

  4. #4
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Je ne sais pas.

  5. #5
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Ah une idée, essaye avec un boucle for comme ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for /f "delims=" %%i in ('type listfile.txt') do 7z a -tzip savSA-%date%.zip -r "%%i"
    La boucle for va compresser tout les répertoire cité dans ton fichier listfile.txt

Discussions similaires

  1. sauvegarder un fichier avec extension
    Par Asmod_D dans le forum Général Java
    Réponses: 5
    Dernier message: 01/11/2009, 23h48
  2. sauvegarde de fichier avec java
    Par bobkorn dans le forum Général Java
    Réponses: 1
    Dernier message: 28/05/2008, 17h23
  3. Batch, créer un fichier avec l'heure actuelle
    Par crosse9 dans le forum Windows
    Réponses: 1
    Dernier message: 19/12/2006, 09h40
  4. Comment sauvegarder un fichier avec choix du repertoire
    Par vantoff dans le forum C++Builder
    Réponses: 14
    Dernier message: 24/07/2006, 15h51
  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