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] Zipper automatiquement un certain type de fichier


Sujet :

Windows

  1. #1
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 148
    Points : 103
    Points
    103
    Par défaut [Batch] Zipper automatiquement un certain type de fichier
    Bonjour à tous,

    Apres de multiples recherches, j'ai trouvé des solutions mais il me faut installer des petits softs (comme Ultrabackup par exemple) et je souhaite éviter cela...
    Mon but est de créer un fichier batch qui me permettrait de zipper un ensemble de fichiers défini, soit en parametre, soit dans le code.
    Je voulais donc savoir si cela etait réalisable "simplement" et si vous pouviez m'aider à commencer car je n'y connais rien dans ce type de programme.
    Merci d'avance pour votre aide.

    Podz

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 336
    Points : 341
    Points
    341
    Par défaut
    Salut,

    pour commencer tu dois installer WinZip Command Line.
    Ca te permettra de faire du Winzip en ligne de commande et donc en batch.
    Tu peux déjà commencer par t'entraîner sur des exemples simples (style compression d'un fichier).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     un ensemble de fichiers défini
    Suivant les critères qui définissent cet ensemble, tu pourras déterminer une liste de ces fichiers en batch et passer la liste à Winzip Command Line.

    Karl.

  3. #3
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 148
    Points : 103
    Points
    103
    Par défaut
    Bonjour et merci pour ton aide,
    J'ai bien installé WinZip Command Line et j'ai fait quelques tests concluants.
    Par contre, il faut que je vois comment passer ça dans la variable PATH pour ne pas avoir à copier le fichier wzzip.exe dans les répertoires où j'utilise mon bat.
    Merci encore pour ton aide.

    Podz

  4. #4
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 148
    Points : 103
    Points
    103
    Par défaut
    Bonjour,
    Je reviens vers vous car j'ai un petit problème...
    J'ai réussi à créer mon fichier et à utiliser WinZip Command Line mais lorsque je lance mon .bat, je dois, à chaque fois qu'un "zip de fichiers" s'effectue, appuyer sur une touche pour passer au suivant.
    Je mets à disposition une partie de mon code et si vous avez une idée ou des questions (si je n'ai pas été assez clair), n'hesitez pas!
    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
    16
    17
    18
    19
    20
    21
    Rem Pour pouvoir utiliser la commande wzzip
    set path=C:\Program Files\WinZip\;%PATH%
    Rem %1 est une date du type AAAAMM (200702 par exemple...) 
    mkdir %1
    	Rem ******* CHG_CALAAAAMM *******
    	if exist CHG_CAL%1* goto Int_CHG_CAL_EXIST
    	goto Int_CHG_CAL_NOEXIST
    		:Int_CHG_CAL_EXIST
    		wzzip CHG_CAL%1.zip CHG_CAL%1*.txt
    		move CHG_CAL%1.zip %1
    		del CHG_CAL%1*.*
    	:Int_CHG_CAL_NOEXIST
    	Rem ******* CHG_EXA_AAAAMM *******
    	if exist CHG_EXA_%1* goto Int_CHG_EXA_EXIST
    	goto Int_CHG_EXA_NOEXIST
    		:Int_CHG_EXA_EXIST
    		wzzip CHG_EXA_%1.zip CHG_EXA_%1*.txt
    		move CHG_EXA_%1.zip %1
    		del CHG_EXA_%1*.*
    	:Int_CHG_EXA_NOEXIST
    Merci d'avance
    Podz

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 336
    Points : 341
    Points
    341
    Par défaut
    Salut,

    je me demande si ce ne serait pas lié au fait que Winzip soit "registered" ou pas ?
    En effet par défaut, normalement si tu ne spécifies pas l'option "-yp", tu ne devrais pas avoir de demande d'interaction utilisateur.

    -yp Display a "Press any key to continue" prompt when the operation completes. This is particularly
    useful when running WZZIP from Start Menu's Run dialog box or from the "start" command.
    (http://www.bnsftransload.com/markets...lineWinZip.pdf)

    Karl.

  6. #6
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 148
    Points : 103
    Points
    103
    Par défaut
    Salut karl3i,
    Tu as totalement raison, mon problème vient de ma version de winzip qui est une version d'évaluation.
    En fait, je cherche le moyen de contourner ce "problème"
    Existe-t-il une petite astuce?
    Merci d'avance
    Podz

  7. #7
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 148
    Points : 103
    Points
    103
    Par défaut
    Bonjour,
    en attendant la réponse à ma dernière question, j'en rajoute une de plus
    En fait je passe differents formats de date en parametre pour mon batch qui permet de zipper un ensemble de fichiers. Le soucis est que je suis obligé de saisir les 3 formats de date qui apparaissent dans le nom de mes fichiers, c'est à dire AAAAMM, AAMM et AAAA-MM.
    J'aimerai arriver à manipuler ces parametres afin de n'avoir à saisir lorsque je lance mon batch que AAAA et MM, soit par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    C:\>test_zip.bat 2007 02
    Je pourrais ainsi utiliser le parametre %1 valant 2007 pour obtenir 07 mais je ne vois pas comment manipuler sous DOS les chaines de caracteres...
    Quelqu'un a t il une idée?
    Merci d'avance pour votre aide.
    Podz

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 336
    Points : 341
    Points
    341
    Par défaut
    Salut,

    pour l'année, tu peux substituer "20" par rien de la manière suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    C:\>set date=2007
    C:\>set annee=%date:20=%
    C:\>echo %annee%
    07
    Jusqu'en 2999, ça devrait faire l'affaire .

    En ce qui concerne la version d'évaluation, il n'y a pas de moyen réellement propre, à part d'acheter Winzip. Le fait de devoir taper une touche, c'est l'équivalent de devoir cliquer sur "I agree" dans les versions de Winzip non enregistrées.
    Pour contourner le problème, tu pourrais simuler l'appui sur une touche, peut-être qu'un script logiciel auto-it ferait l'affaire - à voir.

    Karl.

  9. #9
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 148
    Points : 103
    Points
    103
    Par défaut
    Salut karl et merci pour ton aide
    Citation Envoyé par karl3i
    pour l'année, tu peux substituer "20" par rien de la manière suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    C:\>set date=2007
    C:\>set annee=%date:20=%
    C:\>echo %annee%
    07
    Jusqu'en 2999, ça devrait faire l'affaire .
    Jusqu'en 2099 sans changer le petit bout de code et ça fera largement l'affaire tu as raison .
    Pour ma culture perso, j'aimerai savoir s'il est possible de substituer un certain nombre de caractere à une valeur passée en parametre (ou pas..). Du style si je recupere la date et que je retire les "/", j'obtiens pr aujourd'hui 16022007 et j'aimerai pouvoir manipuler cette chaine afin de retirer les 2 ou 4 premiers caracteres (comme on peut manipuler les données dans un tableau par exemple). Si c'est possible bien entendu

    [EDIT] J'ai trouvé mon bonheur ! Merci developpez.net, il suffit de Rechercher un peu plus précisement

    Citation Envoyé par karl3i
    En ce qui concerne la version d'évaluation, il n'y a pas de moyen réellement propre, à part d'acheter Winzip. Le fait de devoir taper une touche, c'est l'équivalent de devoir cliquer sur "I agree" dans les versions de Winzip non enregistrées.
    C'est justement ça que je ne comprends pas. Je ne devrais pas à avoir à appuyer sur une touche car ma version est bien enregistrée
    je vais voir pr ça...

    Merci encore
    Podz

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 336
    Points : 341
    Points
    341
    Par défaut
    Salut Podz,

    2099, tout à fait, je me suis un peu emballé .

    La méthode de substitution que je t'ai donnée permet de faire cela : c'est une substitution sur l'ensemble des occurences de la chaîne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    C:\>set date=16/02/2007
    C:\>set sansslash=%date:/=%
    C:\>echo %sansslash%
    16022007
    Pour winzip, tu m'avais dit au début que :
    ma version de winzip qui est une version d'évaluation.
    mais finalement tu as une version enregistrée ?

    Karl.

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 336
    Points : 341
    Points
    341
    Par défaut
    Autre chose, dans un thread pas très loin d'ici, il y a un code montrant comment fournir une réponse de type Y (yes) à une commande. En l'occurence, toi si c'est any key qui est demandé, tu peux mettre n'importe quel caractère.

    C'est ici :
    http://developpez.net/forums/showthread.php?t=280159

    Le principe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    lacommande < lareponseattenduestockeedansunfichiertexte.txt
    Peut-être ça te permettra d'automatiser la réponse à Winzip Commande Line ?

  12. #12
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 148
    Points : 103
    Points
    103
    Par défaut
    Bonjour Karl
    Citation Envoyé par karl3i

    mais finalement tu as une version enregistrée ?
    Oui je me suis trompé, j'ai bien une version enregistrée c'est ça qui est bizarre...

    Merci pour ton lien, je vais regarder ça.

    A+ et bon we
    Podz

  13. #13
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 148
    Points : 103
    Points
    103
    Par défaut
    Bonjour,

    En fait j'ai bien une version enregistrée de Winzip mais je me demande si ce n'est pas la version de winzip command line qui serait une version d'évaluation...
    Quelqu'un a une idée la dessus?

    Karl,
    j'ai bien essayé ta solution mais ça ne semble pas fonctionner...

    Merci d'avance pour votre aide.
    Podz

Discussions similaires

  1. [VB6]N'afficher que certain type de fichier dans une FileListBox
    Par Misha dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 03/11/2008, 18h34
  2. projet : enlever certains types de fichiers
    Par contremaitre dans le forum Eclipse C & C++
    Réponses: 1
    Dernier message: 25/02/2008, 15h28
  3. Réponses: 3
    Dernier message: 13/02/2008, 22h32
  4. Réponses: 2
    Dernier message: 21/04/2005, 17h09
  5. Bloquer le téléchargement de certains types de fichiers
    Par Nikos dans le forum Développement
    Réponses: 4
    Dernier message: 23/12/2002, 20h54

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