Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
[R]Dezipper, unrarer fichiers dans tous les sous repertoires
Auteur Message
Répondre en citant
Message [R]Dezipper, unrarer fichiers dans tous les sous repertoires 
Bonjour,

Je possède plusieurs dossiers, contenant chacun des sous répertoires.
Dans chacun de ces sous répertoires, sont présents des fichiers zip
Il me faut dézipper les zip, qui une fois fait, génèrent des fichiers rar
il me faut ensuite dézipper ces fichiers rar pour obtenir enfin mes fichiers
et pour faire propre, il me faut effacer les fichiers zip et les rar
et passer ensuite au prochain sous répertoire

J'ai réalisé un batch, qui, placé dans chacun des sous répertoires et exécuté, se charge de faire ça, en utilisant winrar.

J'aimerai bien que vous me conseilliez pour exécuter ce batch à la racine des sous répertoire, et qu'il s'exécute dans chacun des sous répertoires, m'évitant de perdre du temps à l'éxécuter dans chacun des sous répertoires.

Voici mon batch :

set path="C:\Program Files\WinRAR\";%path%
winrar e -y *.zip
winrar e -y *.rar
del *.zip
del *.r*

Merci d'avance pour vos propositions.
JR.



Dernière édition par jrlejr le Sam 23 Jan 2016 - 09:52; édité 1 fois
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message [R]Dezipper, unrarer fichiers dans tous les sous repertoires 
Hello,

Je t'ai trifouillé un truc avant d'aller dormir histoire de te donner rapidement une réponse
le temps de prendre le temps de te faire un petit truc complet.

Je n'ai pas testé, donc essai-le sur un répertoire factice avant de manipuler le vrai, ou
copie le vrai et vois ce que ça donne, on est jamais trop prudent.

Normalement suffit de le laisser à la racine et il se charge des sous-répertoires.
Code:
@Echo Off

SetLocal Enabledelayedexpansion

CALL:FONCTION ZIP ZIP
CALL:FONCTION RAR R*
GOTO:EOF

:FONCTION
For /R "%~DP0" %%# In ("*.%1") Do (
                           Winrar E -Y "%%#"
                           Set "#=%%#"
                           Set "$=!#:~0,-3!"
                           Del "!$!%2"
                           )



Si ça ne fonctionne pas je suis à toi dès demain soir, j'ai pas eu le temps d'y
accorder plus que quelques minutes.

A demain Okay




______________________________________________________
│Øδ@π.
Visiter le site web du posteur Skype
Répondre en citant
Message [R]Dezipper, unrarer fichiers dans tous les sous repertoires 
Merci beaucoup. Razz
Cela marche presque, et m'a permis de comprendre certaines choses Mr. Green

En fait, dans le dossier racine ou se trouve le fichier bat, il y a les sous dossiers contenant les fichiers zip.
Mon but étant que les fichiers zip se dézippent en restant dans le sous dossiers, puis que les fichiers rar s'y dézippent aussi dans ce même sous dossier, et que les fichiers zip et rar soient effacés.

Avec ton fichier bat,
EN fonction zip zip
La ligne Winrar E -Y "%%#" trouve bien les fichiers zip, mais les dezippe dans le dossier racine, pas dans le dossier contenant les zip, puis les efface correctement.

puis, en fonction rar r*
les fichiers rar se retrouvant en racine, les fichiers finaux se retrouvent à la racine (donc ou se trouve le fichier bat) et les sous répertoires sont vides, au lieu de contenir les fichiers finaux.

La problématique restante étant de faire en sorte que le chemin courant devienne le chemin du sous repertoire, juste avant que winrar s'execute,
Car la commande winrar E place les fichiers dézippés dans le dossier courant

Je joins un fichier 7z contenant un exemple de 2 sous dossiers avec des fichiers zip http://www.sendspace.com/file/xk56jt



Répondre en citant
Message [R]Dezipper, unrarer fichiers dans tous les sous repertoires 
Salut,

Si on reprend le code de Logan, en rajoutant un PUSHD et un Popd a chaque itèration :


Code:
@Echo Off

SetLocal Enabledelayedexpansion

CALL:FONCTION ZIP ZIP
CALL:FONCTION RAR R*
GOTO:EOF

:FONCTION
For /R "%~DP0" %%# In ("*.%1") Do (
                           Pushd "%%~DP#"
                           Winrar E -Y "%%#"
                           Popd
                           Set "#=%%#"
                           Set "$=!#:~0,-3!"
                           Del "!$!%2"
                           )


Fait un test et retourne

Okay




______________________________________________________
AffPng.exe , StringBetween.exe , Hex2Png.exe
Répondre en citant
Message [R]Dezipper, unrarer fichiers dans tous les sous repertoires 
Et bien c'est parfait Okay

Merci beaucoup les gars,
je vais désormais farfouiller tranquillement parmi tous les posts pour prendre de la compétence, pour me perfectionner, Laughing
et qui sait, aider prochainement quelqu'un.

Mr. Green



Message [R]Dezipper, unrarer fichiers dans tous les sous repertoires 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch