Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1725 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  zippage de fichiers et répertoires dans plusieurs fichiers zip (Résolu

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

zippage de fichiers et répertoires dans plusieurs fichiers zip (Résolu

n°1626058
shakaz
Posté le 18-10-2007 à 00:27:38  profilanswer
 

Salut,
 
j'essaye de créer un fichier .bat sous windows xp.  
Le but est de zipper des séries de 2 fichiers (*.cpi et *.tfo) et un répertoire dans un fichier zip.
Les fichiers et répertoires de chaque série ont pour nom un numéro d'identification commun, qui doit devenir le nom du zip.
 
En cherchant je suis tombé sur des scripts qui sont supposés faire environ ça mais ça ne fonctionne pas ici.
Pour récupèrer le numéro d'identification le script utilise le nom d'un des 2 fichiers (*.tfo)
 
Les commandes sont du genre  

Code :
  1. cd C:\Temp\Test
  2. for /f %%i in (*.tfo) do (start "compression des fichiers" /wait "C:\Program Files\Utilities\7-Zip\7z.exe" a -tzip "C:\Temp\Upload\%%~ni.zip" "C:\Temp\Test\%%~ni\" "C:\Temp\Test\%%~ni.cpi" "C:\Temp\Test\%%~ni.tfo" )


 
En lancant la boucle for directement àpd la ligne de commande la réponse est " %%i était innatendu. "
 
EDIT : C'est bon le problème venait des double %%, un seul suffit. Et le /f n'est pas nécessaire, il peut être utile si on a une liste de fichiers, dont on veut utiliser seulement le nom, dans un fichier qu'on met à la place de *.tfo .
Me reste plus qu'a trouver comment dire au script d'ouvrir d'abord une ligne de commande pour que la boucle soit bouclée.
 
EDIT2 : Pour ceux que ça intéresse voici le script final. En fait en ligne de commande il faut un seul % alors que dans un fichier .bat il en faut 2. Il est possible de rajouter des messages standards au lieu de celui qui s'affiche par défaut lors des pauses. La ligne @echo off peut être mis en commentaire si vous vouler voir ce qu'il ce passe.

Code :
  1. @echo off
  2. cmd /C
  3. color 0A
  4. cd "C:\TEMP\TFE"
  5. pause
  6. for %%x in (C:\TEMP\TFE\*.tho) do (start "compression des données" /wait "C:\Program Files\Utilities\7-Zip\7z.exe" a -tzip "C:\TEMP\upload\%%~nx.zip" "C:\TEMP\TFE\%%~nx\" "C:\TEMP\TFE\%%~nx.cpi" "C:\TEMP\TFE\%%~nx.tho" )
  7. pause


Message édité par shakaz le 18-10-2007 à 20:47:02
mood
Publicité
Posté le 18-10-2007 à 00:27:38  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  zippage de fichiers et répertoires dans plusieurs fichiers zip (Résolu

 

Sujets relatifs
[VBA Excel] Appliquer couleur sur une partie de chaine[RESOLU]évènements souris
I need help ! Requete MySQL sur plusieurs tableRésultats avec des liaisons de table.
afficher du texte avec SDL_ttf [resolu][SQL]Plusieurs valeurs pour une même colonne
[Résolu] Problème avec la fonction Uboundbatch :lire un repertoire, modif fichiers et chaner l'extension
[CSS] Decentrage du contenu d'un tableau [résolu][resolu] cppunit
Plus de sujets relatifs à : zippage de fichiers et répertoires dans plusieurs fichiers zip (Résolu


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR