Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
SD to DD
Auteur Message
Répondre en citant
Message SD to DD 
Bonjour, je suis Goldo974 et je suis tout nouveau sur le forum :-D

Je viens tout juste de me mettre au automatisme sous windows 8 avec les BATCH.
J'ai lu quelques forum cependant je ne trouve pas mes réponses donc je me décide à poster ce topic.

J'espère que vous pourrez m'aider ;-)

Voilà, une petite explication s'impose :
Ma femme et moi faisons pas mal de photos sur nos GSM et sur nos appareils photos respectifs. Copier/Coller à chaque fois et trier commence un peu à me fatiguer surtout quand on sait pertinemment que des solutions existent... les automatisations !!!!

En gros, je mets ma carteSD et je veux que mon .bat copie/colle dans des dossiers : /JPG /RAW et /MP4 les fichiers correspondants. De plus, le dossier 103PHOTO peut changer de nom et s'appeler 104PHOTO... , y a-t-il un code %PATH% ou ~ pour çà?
Voici ce que j'ai codé, je sais que mon code est FAUX sur la condition IF car je ne sais pas comment coder cette partie...

Mille merci à vous...

Code:

md "C:\Users\%USERNAME%\Desktop\NX1100.to.TREAT"

rm SI il y a des fichier JPG ALORS execute jpg SINON execute next1
if"G:\DCIM\103PHOTO\*.jpg" goto jpg goto next1

:jpg
md "C:\Users\%USERNAME%\Desktop\NX1100.to.TREAT\jpg"
xcopy G:\DCIM\103PHOTO\*.jpg C:\Users\%USERNAME%\Desktop\NX1100.to.TREAT\jpg

:next1

rm SI il y a des fichier SRW ALORS execute raw SINON execute next2
if"G:\DCIM\103PHOTO\*.srw" goto raw goto next2
:raw
md "C:\Users\%USERNAME%\Desktop\NX1100.to.TREAT\raw"
xcopy G:\DCIM\103PHOTO\*.srw C:\Users\%USERNAME%\Desktop\NX1100.to.TREAT\raw

:next2

rm SI il y a des fichier MP4 ALORS execute mp4 SINON execute end
if"G:\DCIM\103PHOTO\*.mp4" goto mp4 goto end
:mp4
md "C:\Users\%USERNAME%\Desktop\NX1100.to.TREAT\mp4"
xcopy G:\DCIM\103PHOTO\*.mp4 C:\Users\%USERNAME%\Desktop\NX1100.to.TREAT\mp4

:end


Merci à celui ou celle qui tentera de m'aider...

Goldo974



Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message SD to DD 
Salut, pour le nom de dossier qui change, on peut remplacer le nombre par * :
Et voilà le code fonctionnel :


Code:

if not exist "%userprofile%\Desktop\NX1100.to.TREAT\"     mkdir "%userprofile%\Desktop\NX1100.to.TREAT\"
if not exist "%userprofile%\Desktop\NX1100.to.TREAT\jpg\" mkdir "%userprofile%\Desktop\NX1100.to.TREAT\jpg\"
if not exist "%userprofile%\Desktop\NX1100.to.TREAT\raw\" mkdir "%userprofile%\Desktop\NX1100.to.TREAT\raw\"
if not exist "%userprofile%\Desktop\NX1100.to.TREAT\mp4\" mkdir "%userprofile%\Desktop\NX1100.to.TREAT\mp4\"

if /i exist "G:\DCIM\*PHOTO\*.jpg" xcopy "G:\DCIM\*PHOTO\*.jpg" "%userprofile%\Desktop\NX1100.to.TREAT\jpg\"
if /i exist "G:\DCIM\*PHOTO\*.srw" xcopy "G:\DCIM\*PHOTO\*.srw" "%userprofile%\Desktop\NX1100.to.TREAT\raw\"
if /i exist "G:\DCIM\*PHOTO\*.mp4" xcopy "G:\DCIM\*PHOTO\*.mp4" "%userprofile%\Desktop\NX1100.to.TREAT\mp4\"

echo. &echo. &echo. &echo TERMINE ! &pause &exit






______________________________________________________
Visiter le site web du posteur
Répondre en citant
Message SD to DD 
Bonjour Skywalker et merci pour ton aide :-D

Le script fonctionne et à la fois non...

Je m'explique :

- Les dossiers se créés
- Les copies non

Je pense que c'est la variable au niveau du nom de dossier qui pose problème
Code:
*PHOTO
.

J'ai retravaillé le code selon ce que tu m'as donné et voici le résultat "théorique" car comme les copies ne fonctionnent pas, le script ne fonctionne pas.

Voici le code :

Code:

if not exist "%userprofile%\Desktop\NX1100.to.TREAT\" mkdir "%userprofile%\Desktop\NX1100.to.TREAT\"
if /i exist "G:\DCIM\*PHOTO\*.jpg" goto jpg goto next1
:jpg
if not exist "%userprofile%\Desktop\NX1100.to.TREAT\jpg\" mkdir "%userprofile%\Desktop\NX1100.to.TREAT\jpg\"
xcopy "G:\DCIM\*PHOTO\*.jpg" "%userprofile%\Desktop\NX1100.to.TREAT\jpg\"
:next1
if /i exist "G:\DCIM\*PHOTO\*.srw" goto raw goto next2
:raw
if not exist "%userprofile%\Desktop\NX1100.to.TREAT\raw\" mkdir "%userprofile%\Desktop\NX1100.to.TREAT\raw\"
xcopy "G:\DCIM\*PHOTO\*.srw" "%userprofile%\Desktop\NX1100.to.TREAT\raw\"
:next2
if /i exist "G:\DCIM\*PHOTO\*.mp4" goto mp4 goto end
:mp4
if not exist "%userprofile%\Desktop\NX1100.to.TREAT\mp4\" mkdir "%userprofile%\Desktop\NX1100.to.TREAT\mp4\"
xcopy "G:\DCIM\*PHOTO\*.mp4" "%userprofile%\Desktop\NX1100.to.TREAT\mp4\"
:end
pause
&exit


En fait, je cherche à :


- copier les fichiers
- créer uniquement les dossiers utiles


Merci à toi et bonne journée ;-)

Goldo974



Répondre en citant
Message SD to DD 
Hello,

Je ne comprends pas pouequoi tu mets cela:

Code:
goto jpg goto next1


Est-ce vraiment utile ? A quoi ça te servirait exactement ?
@+




______________________________________________________
Une question ? N'hésitez pas à me contacter par Message Privé ou via le topique concerné.
Visiter le site web du posteur
Répondre en citant
Message SD to DD 
Bonjour AlonsO7798 et avant toute chose merci de prendre un temps pour tenter de comprendre ce que je cherche à faire :-D

Alors, ce que je tente de réaliser pour le moment c'est un simple copier/coller entre la carte SD de mon appareil photo et le bureau de mon PC.
En gros, j'ai réussi cette étape Laughing

Là où tout se corse c'est que je souhaiterais en fait créer des dossiers (JPG, RAW et MP4) uniquement SI la carte présente des fichiers.jpg, fichiers.raw et fichiers.mp4.
C'est un genre de IF do ELSE do, mais sur un autre forum ils disaient qu'il ne faut pas mettre de ELSE dans un fichier .bat!

Ce que je veux faire c'est cà :

Code:

SI sur le bureau le dossier PICTS.to.TREAT n'existe pas ALROS créer PICTS.to.TREAT SINON va à NEXT1

NEXT1
SI des fichiers JPG sont présents sur la carte SD ALORS créer PICTS.to.TREAT/JPG/ SINON va à NEXT2
copier TOUS LES JPG de la carte SD vers PICTS.to.TREAT/JPG/

NEXT2
SI des fichiers SRW sont présents sur la carte SD ALORS créer PICTS.to.TREAT/RAW/ SINON va à NEXT3
copier TOUS LES SRW de la carte SD vers PICTS.to.TREAT/RAW/

NEXT3
SI des fichiers MP4 sont présents sur la carte SD ALORS créer PICTS.to.TREAT/MP4/ SINON va à END
copier TOUS LES MP4 de la carte SD vers PICTS.to.TREAT/MP4/

END


Bon je sais que ce n 'est pas du code mais c'est pour rendre les choses plus clairs...
Le truc comme je l'ai posté plus haut c'est que la variable du nom de dossier de la carteSD ne fonctionne pas "../*PHOTO" !


Voilà ce que pour le moment je tente de réaliser



Répondre en citant
Message SD to DD 
Hello,

Merci pour ton explication, je tentes une petite chose et reviens vers toi dès que j'ai terminé mon bout de code.

Edit: Tentes de mettre tous tes fichiers dans un même dossier (pour test) et tu essayes mon code ci-dessous. Chez moi les fichiers batch ne fonctionnent pas, je ne sais pas pourquoi. Reviens vers moi une fois les tests terminés.

Code:
@Echo On
Title CopySD ~ By Goldo974

::_> ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ // CopySD ## Edited By AlonsO

Rem Configurations
Set "CheminSD=%USERPROFILE%\Desktop\Case BATCH\CarteSD"


Rem Traitement des fichiers JPG
:JPG
If /I exist "CarteSD\*.jpg" (
   
   MKDIR "%USERPROFILE%\Desktop\Case BATCH\PICTS.to.TREAT\JPG\"
   XCOPY "%CheminSD%\*.jpg" "%USERPROFILE%\Desktop\Case BATCH\PICTS.to.TREAT\JPG"
)

Rem Traitement des fichiers MP4
:MP4
If /I exist "CarteSD\*.mp4" (
   
   MKDIR "%USERPROFILE%\Desktop\Case BATCH\PICTS.to.TREAT\MP4\"
   XCOPY "%CheminSD%\*.mp4" "%USERPROFILE%\Desktop\Case BATCH\PICTS.to.TREAT\MP4"
)

Rem Traitement des fichiers RAW
:RAW
If /I exist "CarteSD\*.raw" (
   
   MKDIR "%USERPROFILE%\Desktop\Case BATCH\PICTS.to.TREAT\RAW\"
   XCOPY "%CheminSD%\*.raw" "%USERPROFILE%\Desktop\Case BATCH\PICTS.to.TREAT\RAW"
)

Echo. & Echo. & Echo Traitement termine, appuyez sur une touche pour terminer. & Pause >NUL


Cdlt,



Dernière édition par AlonsO7798 le Ven 22 Mai 2015 - 15:01; édité 1 fois

______________________________________________________
Une question ? N'hésitez pas à me contacter par Message Privé ou via le topique concerné.
Visiter le site web du posteur
Répondre en citant
Message SD to DD 
Salut Wink
Tu peux aussi jeter un coup d'oeil sur ce vbscript si vous voulez bien sûr Laughing




______________________________________________________
Mes Contributions en Téléchargement
Répondre en citant
Message SD to DD 
Salut Hackoo,

Ton script est sympas mais il ne réponds pas à ce que je recherche. Néanmoins c'est un bon moyen de synchroniser les fichiers sans avoir à installer de logiciels et çà c'est cool ;-)

J'attends ce qu'AlonsO7798 va me proposer comme solution.
Ce que je cherche à faire est vraiment un tri fichier/dossier puis par la suite, renommer tous les fichiers copiés avec la date de prise de vue aaaammjj suivit du numéro d'incrémentation 001... soit par exemple :

DCIM1042.jpg deviendrait 20150523_001.jpg

Mais pour l'instant je veux juste copié/coller et créer les dossiers utiles en fonction des types de fichiers présents sur la carte SD. Le code \*\ pour un nom de dossier variable ne fonctionne pas.

En tous les cas, merci à vous pour votre coup de main.
J'espère arriver à executer ce bat très prochainement ;-)



Répondre en citant
Message SD to DD 
Salut,

Pour infos j'ai édité mon post au dessus hier.

Cdt




______________________________________________________
Une question ? N'hésitez pas à me contacter par Message Privé ou via le topique concerné.
Visiter le site web du posteur
Répondre en citant
Message SD to DD 
Salut AlonsO7798,

J'me sens un peu stupid là lol Embarassed
J'avais pas fais attention...

Fonctionne pas... Je vais tenter de d'apporter des corrections en fonction de ce que tu m'as donné.
Si j'y parviens, je posterai le code, sinon je posterai ma désolation lol

Merci infiniment :-D



Répondre en citant
Message SD to DD 
Hello,

Tu as réussi ? Des nouvelles du programme ?

Bye,
Alonso.




______________________________________________________
Une question ? N'hésitez pas à me contacter par Message Privé ou via le topique concerné.
Visiter le site web du posteur
Message SD to DD 


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