[RESOLU] problème inconnu sur mon script

Une difficulté, une précision posez vos questions

Modérateur : WIN32-[GG]

Répondre
iliko
Batcheur occasionnel
Messages : 6
Enregistré le : 20 juin 2011 17:12

[RESOLU] problème inconnu sur mon script

Message par iliko »

Bonjour à tous,

Je souhaiterais copier tous les fichiers photos (qui sont donc en *.jpg) qui sont situés dans des sous-répertoires d'un répertoire vers un dossier (mettons C:\script-photos-tmp\) mais je m'embrouille...
J'ai fait ce script pour l'instant :

set /p rep= quel est le premier repertoire des photos?
mkdir C:\script-photos-tmp\
FOR /D %F in (%rep%\*) DO copy "%F\*.*" "C:\script-photos-tmp\"
pause

Mais celui ne fonctionne pas, en effet il se ferme à l'avant dernière ligne et je ne comprends pas pourquoi alors que quand je lance cette ligne en CMD normal en remplaçant %rep% par le chemin souhaité cela fonctionne !
Auriez-vous des idés / solutions ?

Merci d'avance :)
Modifié en dernier par iliko le 20 juin 2011 22:11, modifié 1 fois.
Avatar du membre
WIN32-[GG]
SuperBatcher
Messages : 129
Enregistré le : 25 avr. 2011 19:34
Localisation : Dernière porte à droite

Re: problème inconnu sur mon script

Message par WIN32-[GG] »

Bonjour et binvenue :)

Je crois avoir la solution:

Code : Tout sélectionner

@echo off
set /p rep=Quel est le premier repertoir des photos? :
cd /D %rep%
if not %ERRORLEVEL%==0 (
echo Le repertoire %rep% n'existe pas
pause>nul&exit
)
md C:\script-photos-tmp\
for /f %%a in ('dir /S /B *.jpg') do copy /N /Y "%%a" "C:\script-photos-tmp" >nul &echo Copie de %%a
echo Copie terminee
pause
WIN32-[GG]
The quieter you become,
the more you are able to ear...
iliko
Batcheur occasionnel
Messages : 6
Enregistré le : 20 juin 2011 17:12

Re: problème inconnu sur mon script

Message par iliko »

Merci beaucoup à toi WIN32-[GG], je n'aurais pas réussi sans ton aide ;) !
Par contre je n'est pas tout compris dans le batch ( je suis un débutant dans le domaine :oops: ), a quoi sert le "pause>nul&exit" ? merci :)

Et je viens de remarquer autre chose : dans mes sous-répertoires, il y a des fichiers qui ont le même nom, aurais-tu une idée pour les renommer aléatoirement avant de les mettre dans le dossier ?
Merci encore pour ton aide ;)
Avatar du membre
WIN32-[GG]
SuperBatcher
Messages : 129
Enregistré le : 25 avr. 2011 19:34
Localisation : Dernière porte à droite

Re: problème inconnu sur mon script

Message par WIN32-[GG] »

Je t'en prie ;) et puis, on ne reste pas débutant très longtemps

Le pause>nul&exit on peut aussi l'écrire:

pause>nul
exit

Le & servant à exécuter plusieurs commandes sur une même ligne,
"pause" affiche "Appuyez sur une touche pour continuer..." le >nul redirige ce texte vers le fichier nul (qui est automatiquement effacé ou quelquechose comme ça, d'ailleurs tu ne peux pas creer un fichier qui s'appelle "nul")
La console reste vide
Le exit est, je pense assez explicite... :lol:

Les renomer aléatoirement...

Laisse moi deux minutes.
WIN32-[GG]
The quieter you become,
the more you are able to ear...
iliko
Batcheur occasionnel
Messages : 6
Enregistré le : 20 juin 2011 17:12

Re: problème inconnu sur mon script

Message par iliko »

Merci beaucoup pour les informations , j'utiliserais désormais pause>nul au lieu de pause simple :D

C'est sympa à toi de m'aider comme ça :) je vais essayer de trouver de mon côté mais je doute du résultat ^^
Avatar du membre
WIN32-[GG]
SuperBatcher
Messages : 129
Enregistré le : 25 avr. 2011 19:34
Localisation : Dernière porte à droite

Re: problème inconnu sur mon script

Message par WIN32-[GG] »

Bon voilà, 8-) j'ai fait de mon mieux mais je suis pas sur à 100 %, tu pourais vérifier si cela correspond à tes attentes

Code : Tout sélectionner

@echo off
set /p rep=Quel est le premier repertoir des photos? :
cd /D %rep%
if not %ERRORLEVEL%==0 (
echo Le repertoire %rep% n'existe pas
pause>nul&exit
)
md C:\script-photos-tmp\
cd /D C:\script-photos-tmp\

for /f %%a in ('dir "%rep%\*.jpg" /S /B') do (
if exist "%CD%\%%~na.jpg" (
    ren "%CD%\%%~na.jpg" "%RANDOM%-%%~na.jpg
)
copy /N "%%a" "C:\script-photos-tmp" >nul 
echo Copie de %%a
)
echo Copie terminee
pause
WIN32-[GG]
The quieter you become,
the more you are able to ear...
iliko
Batcheur occasionnel
Messages : 6
Enregistré le : 20 juin 2011 17:12

Re: problème inconnu sur mon script

Message par iliko »

C'est parfait WIN32-[GG] :D
Merci infiniment pour ton aide :!:
Avatar du membre
WIN32-[GG]
SuperBatcher
Messages : 129
Enregistré le : 25 avr. 2011 19:34
Localisation : Dernière porte à droite

Re: problème inconnu sur mon script

Message par WIN32-[GG] »

Je t'en prie ;)

Oh! Par contre: n'oubli pas de mettre "[Résolu]" dans le sujet ;)

Bonne soirée, moi je garde le batch dans mes archives 8-)
WIN32-[GG]
The quieter you become,
the more you are able to ear...
iliko
Batcheur occasionnel
Messages : 6
Enregistré le : 20 juin 2011 17:12

Re: [RESOLU] problème inconnu sur mon script

Message par iliko »

;)
C'est fait !
bonne soirée à toi aussi ! :)
Répondre