Software » "Synchro" entre fichiers d'extensions différentes
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 10:28:57,
Par GeorgioBonjour à tous
Bon le titre est un peu confus, mais je ne trouvais pas comment exprimer mon problème différemment.
Je vous explique donc en vitesse :
J'ai dans un répertoire 3200 fichiers RAW(enfin .nef).
Dans un deuxieme dossier j'ai les mêmes photos mais en jpeg (qui résulte en fait de la conversion des RAW du premier dossier sans retouches). Dans ce deuxième dossier j'ai effectué un tri et il ne me reste "que" 1000 photos.
Le gros du problème est de "synchroniser" les dossiers afin qu'il ne me reste dans le dossier 1 que les RAW des photos qui se trouvent en jpeg dans le 2eme dossier (et une fois de plus je trouve pas une autre manière d'éclaircir cette phrase) afin de pouvoir traiter les RAW.
Au passage, l'OS est windows 8
En espérant que quelqu'un puisse m'aider
(J'suis sûr qu'en le faisant à la main j'vais me planter ^^ )
Bon le titre est un peu confus, mais je ne trouvais pas comment exprimer mon problème différemment.
Je vous explique donc en vitesse :
J'ai dans un répertoire 3200 fichiers RAW(enfin .nef).
Dans un deuxieme dossier j'ai les mêmes photos mais en jpeg (qui résulte en fait de la conversion des RAW du premier dossier sans retouches). Dans ce deuxième dossier j'ai effectué un tri et il ne me reste "que" 1000 photos.
Le gros du problème est de "synchroniser" les dossiers afin qu'il ne me reste dans le dossier 1 que les RAW des photos qui se trouvent en jpeg dans le 2eme dossier (et une fois de plus je trouve pas une autre manière d'éclaircir cette phrase) afin de pouvoir traiter les RAW.
Au passage, l'OS est windows 8
En espérant que quelqu'un puisse m'aider
(J'suis sûr qu'en le faisant à la main j'vais me planter ^^ )
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 10:39:05,
Par Jean-ChristopheDonc, si je comprends bien, tu as deux répertoires.
Le premier contient 3200 fichier NEF.
Le second contient 1000 fichier JPEG.
Les 1000 fichiers JPEG ont le même nom que 1000 des 3200 fichiers NEF (à l'extension près).
Tu voudrais virer les 2200 fichier NEF qui n'ont pas d'équivalent JPEG.
C'est ça?
Le premier contient 3200 fichier NEF.
Le second contient 1000 fichier JPEG.
Les 1000 fichiers JPEG ont le même nom que 1000 des 3200 fichiers NEF (à l'extension près).
Tu voudrais virer les 2200 fichier NEF qui n'ont pas d'équivalent JPEG.
C'est ça?
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 10:55:52,
Par GeorgioExactement JC
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 11:50:50,
Par Jean-ChristopheVoici un batch qui fait ce que tu veux.
Si ce n'est pas assez clair, n'hésite pas à le dire.
Il n'y a aucun effacement de fichier. Je ne fais que les déplacer dans un répertoire "Orphans".
@echo off
cls
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
mkdir c:\temp\F1\Orphans\
FOR /R C:\temp\F1\ %G IN (*.nef) DO (call :subroutine "%G")
GOTO :eof
:subroutine
set NEFFile=%1
Set JPEGFile=%NEFFile:nef=jpeg%
rem --------- VOIR CI DESSOUS -----------
rem change "\temp\F1" par le repertoire qui contient les fichier NEF (sans le drive:)
rem change "\temp\F2" par le repertoire qui contient les fichier JPEG (sans le drive:)
Set JPEGFile=%JPEGFile:\temp\F1=\temp\F2%
IF NOT EXIST (
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
move c:\temp\F1\Orphans\
)
GOTO :eof
cls
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
mkdir c:\temp\F1\Orphans\
FOR /R C:\temp\F1\ %G IN (*.nef) DO (call :subroutine "%G")
GOTO :eof
:subroutine
set NEFFile=%1
Set JPEGFile=%NEFFile:nef=jpeg%
rem --------- VOIR CI DESSOUS -----------
rem change "\temp\F1" par le repertoire qui contient les fichier NEF (sans le drive:)
rem change "\temp\F2" par le repertoire qui contient les fichier JPEG (sans le drive:)
Set JPEGFile=%JPEGFile:\temp\F1=\temp\F2%
IF NOT EXIST (
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
move c:\temp\F1\Orphans\
)
GOTO :eof
Si ce n'est pas assez clair, n'hésite pas à le dire.
Il n'y a aucun effacement de fichier. Je ne fais que les déplacer dans un répertoire "Orphans".
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 12:48:41,
Par GeorgioMa réponse n'est pas passée
Je recommence donc
Je vais tester ca tout de suite et je te tiens au courant si j'ai un problème
Mais déjà un tout grand merci
Je recommence donc
Je vais tester ca tout de suite et je te tiens au courant si j'ai un problème
Mais déjà un tout grand merci
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 13:08:07,
Par GeorgioBon j'ai un problème (oui je suis un noob ^^ )
J'ai modifié les répertoires dans le batch. Ensuite je l'ai enregistré en .bat
Je l'ai lancé en ligne de commande et j'obtiens uniquement "subroutine était inattendu"
Voici ce que j'ai dans le bat :
@echo off
cls
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
mkdir c:\photo\thairaw\Orphans\
FOR /R C:\photo\thairaw\ %G IN (*.nef) DO (call :subroutine "%G")
GOTO :eof
:subroutine
set NEFFile=%1
Set JPEGFile=%NEFFile:nef=jpeg%
rem --------- VOIR CI DESSOUS -----------
rem change "\temp\F1" par le repertoire qui contient les fichier NEF (sans le drive:)
rem change "\temp\F2" par le repertoire qui contient les fichier JPEG (sans le drive:)
Set JPEGFile=%JPEGFile:\photo\thairaw=\photo\thaijpg%
IF NOT EXIST (
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
move c:\photo\thairaw\Orphans\
)
GOTO :eof
Dernière édition: 28/03/2013 @ 13:11:18
J'ai modifié les répertoires dans le batch. Ensuite je l'ai enregistré en .bat
Je l'ai lancé en ligne de commande et j'obtiens uniquement "subroutine était inattendu"
Voici ce que j'ai dans le bat :
@echo off
cls
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
mkdir c:\photo\thairaw\Orphans\
FOR /R C:\photo\thairaw\ %G IN (*.nef) DO (call :subroutine "%G")
GOTO :eof
:subroutine
set NEFFile=%1
Set JPEGFile=%NEFFile:nef=jpeg%
rem --------- VOIR CI DESSOUS -----------
rem change "\temp\F1" par le repertoire qui contient les fichier NEF (sans le drive:)
rem change "\temp\F2" par le repertoire qui contient les fichier JPEG (sans le drive:)
Set JPEGFile=%JPEGFile:\photo\thairaw=\photo\thaijpg%
IF NOT EXIST (
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
move c:\photo\thairaw\Orphans\
)
GOTO :eof
Dernière édition: 28/03/2013 @ 13:11:18
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 13:29:00,
Par Jean-ChristopheDamned! Les doubles % sont devenus des simples % dans le forum.
@echo off
cls
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
mkdir c:\temp\F1\Orphans\
FOR /R C:\temp\F1\ %G IN (*.nef) DO (call :subroutine "%G")
GOTO :eof
:subroutine
set NEFFile=%1
Set JPEGFile=%NEFFile:nef=jpeg%
rem --------- VOIR CI DESSOUS -----------
rem change "\temp\F1" par le repertoire qui contient les fichier NEF (sans le drive:)
rem change "\temp\F2" par le repertoire qui contient les fichier JPEG (sans le drive:)
Set JPEGFile=%JPEGFile:\temp\F1=\temp\F2%
IF NOT EXIST (
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
move c:\temp\F1\Orphans\
)
GOTO :eof
Dernière édition: 28/03/2013 @ 13:29:36
@echo off
cls
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
mkdir c:\temp\F1\Orphans\
FOR /R C:\temp\F1\ %G IN (*.nef) DO (call :subroutine "%G")
GOTO :eof
:subroutine
set NEFFile=%1
Set JPEGFile=%NEFFile:nef=jpeg%
rem --------- VOIR CI DESSOUS -----------
rem change "\temp\F1" par le repertoire qui contient les fichier NEF (sans le drive:)
rem change "\temp\F2" par le repertoire qui contient les fichier JPEG (sans le drive:)
Set JPEGFile=%JPEGFile:\temp\F1=\temp\F2%
IF NOT EXIST (
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
move c:\temp\F1\Orphans\
)
GOTO :eof
Dernière édition: 28/03/2013 @ 13:29:36
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 13:30:10,
Par Jean-ChristopheBordel... Toujours pas de double %
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 13:32:54,
Par Jean-ChristopheJ'ai du mettre un blanc entre les doubles %. Il faut virer le blanc aux deux endroits où il y a "% %"
@echo off
cls
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
mkdir c:\temp\F1\Orphans\
FOR /R C:\temp\F1\ % %G IN (*.nef) DO (call :subroutine "% %G")
GOTO :eof
:subroutine
set NEFFile=%1
Set JPEGFile=%NEFFile:nef=jpeg%
rem --------- VOIR CI DESSOUS -----------
rem change "\temp\F1" par le repertoire qui contient les fichier NEF (sans le drive:)
rem change "\temp\F2" par le repertoire qui contient les fichier JPEG (sans le drive:)
Set JPEGFile=%JPEGFile:\temp\F1=\temp\F2%
IF NOT EXIST (
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
move c:\temp\F1\Orphans\
)
GOTO :eof
@echo off
cls
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
mkdir c:\temp\F1\Orphans\
FOR /R C:\temp\F1\ % %G IN (*.nef) DO (call :subroutine "% %G")
GOTO :eof
:subroutine
set NEFFile=%1
Set JPEGFile=%NEFFile:nef=jpeg%
rem --------- VOIR CI DESSOUS -----------
rem change "\temp\F1" par le repertoire qui contient les fichier NEF (sans le drive:)
rem change "\temp\F2" par le repertoire qui contient les fichier JPEG (sans le drive:)
Set JPEGFile=%JPEGFile:\temp\F1=\temp\F2%
IF NOT EXIST (
rem --------- VOIR CI DESSOUS -----------
rem change "c:\temp\F1\" par le repertoire qui contient les fichier NEF
move c:\temp\F1\Orphans\
)
GOTO :eof
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 13:34:39,
Par Jean-ChristophePour faire court. Dans le ligne qui commence par FOR, il faut que le signe % qui précède la lettre G soit double. C'est tout.
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 13:37:59,
Par GeorgioMerci
Mais toujours le même message à propos de la sub routine
je reverifie encore ma modification du batch
Mais toujours le même message à propos de la sub routine
je reverifie encore ma modification du batch
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 13:41:33,
Par Jean-Christopherenomme ton fichier .bat en .cmd si tu veux bien
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 13:44:12,
Par GeorgioPas de changement en changeant l'extension. Le dossier "Orphans" se crée bien mais toujours le probleme de "subroutine"
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 13:51:24,
Par Jean-Christophetu as bien doublé les % dans la ligne FOR? Je viens d'essayer ici, sur un windows 8 et ça fonctionne.
Mais en laissant les simples %, j'ai bien le même message d'erreur que toi
Mais en laissant les simples %, j'ai bien le même message d'erreur que toi
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 13:57:21,
Par GeorgioBon la on avance vraiment...
J'ai donc supprimé les espaces entre les %
Mais là il me vire tous les nef dans le dossier Orphans
J'ai donc supprimé les espaces entre les %
Mais là il me vire tous les nef dans le dossier Orphans
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 13:59:32,
Par Jean-Christophec'est qu'il ne trouve pas d'équivalent en JPEG dans l'autre folder.
Les fichiers ont bien les mêmes noms?
FolderNEF
- fichier1.nef
- fichier2.nef
- fichier3.nef
FolderJPEG
- fichier1.jpeg
- fichier3.jpeg
Les fichiers ont bien les mêmes noms?
FolderNEF
- fichier1.nef
- fichier2.nef
- fichier3.nef
FolderJPEG
- fichier1.jpeg
- fichier3.jpeg
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 14:00:59,
Par Georgioje crois que ca vient du fait que les fichiers sont en .JPG (MAJ etc...) je teste de modifier ca de mon coté
J'ai remplacé les jpeg par JPG mais toujours pas de modification au niveau du résultat
Mais au moins j'ai plus de message d'erreur
Ne te tracasse pas trop j'vais encore chipotter un peu pour voir ce que ca donne
Dernière édition: 28/03/2013 @ 14:03:16
J'ai remplacé les jpeg par JPG mais toujours pas de modification au niveau du résultat
Mais au moins j'ai plus de message d'erreur
Ne te tracasse pas trop j'vais encore chipotter un peu pour voir ce que ca donne
Dernière édition: 28/03/2013 @ 14:03:16
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 14:03:34,
Par H2G2Je serais bien incapable de pondre du code, mais au cas où le joli batch de JC ne produirait pas le résultat souhaité, il y a moyen de faire ce que tu cherches (sous Win 7, en tout cas) en jouant un peu avec le soft Ant Renamer (du vénéré antp ).
Par ex.:
Tu fais une copie de ton dossier 2 vers un dossier 3 où tu remplaces (avec Ant Renamer) toutes les extensions "JPEG" par "NEF".
Tu déplaces (ou tu copies pour pas tout niquer si ça foire) tout le contenu de ton dossier 1 vers le dossier 3, mais en demandant de conserver les fichiers du même nom pour que Windows ajoute un (2) dans le nom des nouveaux fichiers en double.
Toujours avec Ant Renamer, tu fais un remplacement de chaîne (en incluant l'extension) de "(2).NEF" par ".BON" (par ex.).
Dans ton dossier tu tries par extension et tu vires tous les "NEF".
Il ne te reste plus qu'à remplacer les extensions "BON" qui sont les seuls fichiers à rester par "NEF" et le tour est joué.
Maintenant, il y a sûrement plus simple, hein.
Par ex.:
Tu fais une copie de ton dossier 2 vers un dossier 3 où tu remplaces (avec Ant Renamer) toutes les extensions "JPEG" par "NEF".
Tu déplaces (ou tu copies pour pas tout niquer si ça foire) tout le contenu de ton dossier 1 vers le dossier 3, mais en demandant de conserver les fichiers du même nom pour que Windows ajoute un (2) dans le nom des nouveaux fichiers en double.
Toujours avec Ant Renamer, tu fais un remplacement de chaîne (en incluant l'extension) de "(2).NEF" par ".BON" (par ex.).
Dans ton dossier tu tries par extension et tu vires tous les "NEF".
Il ne te reste plus qu'à remplacer les extensions "BON" qui sont les seuls fichiers à rester par "NEF" et le tour est joué.
Maintenant, il y a sûrement plus simple, hein.
« Nul n'éprouvette en son pays. » (Louise Brown)
Twitter: Quand le besoin est pressant, tous les lieux sont propices.
Twitter: Quand le besoin est pressant, tous les lieux sont propices.
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 14:05:27,
Par GeorgioEt voila
J'avais juste oublié une occurence de jpeg dans le script
Ca marche nickel ^^
Merci merci...
PS :J'vais rajouter des remarques dans le script pour ne plus me faire passer pour un con la prochaine fois
N'empêche la j'ai fait fort niveau boulet attitude
Dernière édition: 28/03/2013 @ 14:07:43
J'avais juste oublié une occurence de jpeg dans le script
Ca marche nickel ^^
Merci merci...
PS :J'vais rajouter des remarques dans le script pour ne plus me faire passer pour un con la prochaine fois
N'empêche la j'ai fait fort niveau boulet attitude
Dernière édition: 28/03/2013 @ 14:07:43
"Synchro" entre fichiers d'extensions différentes
Publié le 28/03/2013 @ 14:16:13,
Par Jean-ChristopheBoh, ça marche, c'est le principal.
Et puis, on a pas été aidé par le forum qui a sucré les doubles % sans raison ni message d'avertissement
Et puis, on a pas été aidé par le forum qui a sucré les doubles % sans raison ni message d'avertissement