OVH Cloud OVH Cloud

programme simple à développer

22 réponses
Avatar
Philippe LAGARDE
Bonjour à tous,

je suis malheureusement sous windows, et j'ai un besoin de manipulation de
fichier simples que windows ne sait pas faire. Je ne pense pas que ce soit
très difficile à réaliser, alors si quelqu'un en a le besoin et les moyens
techniques...

Donc je fais un reportage, j'ai 300 photos NEF, dans un dossier A. je les
passe en batch pour en faire des JPEG dans un dossier B (avec le même nom).
Je les trie, et supprime celles que je ne veux pas. Je me retrouve avec
disons 100 photos. Je voudrais un outil qui me prenne les 100 originaux
correspondants, et que me les place pour traitement dans un dossier C.
C'est trivial, mais windows ne fait pas de "grep", et pour une manip aussi
simple, il fauit programmer...

Cordialement,

--
Philippe LAGARDE
www.mise-en-lumiere.org

10 réponses

1 2 3
Avatar
Fred
pehache wrote:
lourde (mais pas forcément compliquée) est d'installer Cygwin (tout un
environnement Unix-like, donc bien sûr les shells), mais il est possible
qu'il y ait plus léger si ne veut qu'un shell (d'ailleurs ça m'intéresserait
aussi). Je crois que Microsoft a un produit dans le style, aussi...


Ah la brute... pourquoi faire simple etc etc :)

--
Frédéric

Avatar
Philippe LAGARDE

Euh non, pas trop :( Elles sont ou les jpeg legeres? Tu avais enonce que
les NEF etaient dans A, les JPEG dans B et que tu voulais les NEF
correspondant aux JPEG presentes dans B dans C. Maintenant, comme tout
client, tu changes les specs :-) La ligne de commande que je t'ai donnee
copie dans C les NEF de A dont il existe un JPEG dans B. S'il y a
d'autres JPEG, elles sont ou?


Bon, je reprends. En fait dans A, j'ai des jpeg "lourdes" et des NEF,
mélangées (ça dépend de l'état de mon buffer et de la dynamique de la
scène). Donc quand je scripte les nef, je passe en même temps les jpeg et
je fais du jpeg leger avec tout ça. Je trie. Mais quand je passe au
traitement, il faut que je revienne aux originaux, qu'ils soient nef ou
jpeg.

Merci encore pour ton aide,

--
Philippe LAGARDE
www.mise-en-lumiere.org

Avatar
Fred
Philippe LAGARDE wrote:
Bon, je reprends. En fait dans A, j'ai des jpeg "lourdes" et des NEF,
mélangées (ça dépend de l'état de mon buffer et de la dynamique de la
scène). Donc quand je scripte les nef, je passe en même temps les jpeg et
je fais du jpeg leger avec tout ça. Je trie. Mais quand je passe au
traitement, il faut que je revienne aux originaux, qu'ils soient nef ou
jpeg.


Bon, si j'ai bien compris, tu pars de ceci:

├───A
│ file01.nef
│ file02.nef
│ file03.nef
│ file04.jpg
│ file05.nef
│ file06.jpg

├───B
│ file02.nef
│ file04.jpg

└───C

et tu veux arriver a ca:
G:.
├───A
│ file01.nef
│ file02.nef
│ file03.nef
│ file04.jpg
│ file05.nef
│ file06.jpg

├───B
│ file02.nef
│ file04.jpg

└───C
file02.nef
file04.jpg


Si j'ai suivi, la commande suivante fait ce que tu veux (lance depuis B):

testb>for %i in (*.*) do if exist ..a%~ni.nef ( copy ..a%~ni.nef
..c%~ni.nef ) else ( copy ..a%~ni.jpg ..c%~ni.jpg )

En gros: parcourir B et pour chaque fichier present dans B copier dans C
le fichier (NEF ou JPG) correspondant de A (meme base : %~ni) avec
l'extension associee (d'ou le test). J'ai bon askoussi?

--
Frédéric

Avatar
Philippe LAGARDE

Bon, si j'ai bien compris, tu pars de ceci:

├───A
│ file01.nef
│ file02.nef
│ file03.nef
│ file04.jpg
│ file05.nef
│ file06.jpg
│
├───B
│ file02.nef
│ file04.jpg
│
└───C


Pas exactement. J'ai :

├───A
│ file01.nef
│ file02.nef
│ file03.nef
│ file04.jpg
│ file05.nef
│ file06.jpg
│
├───B
│ file02.JPG <------
│ file04.jpg
│
└───C

Ce qui complique un peu les choses...

Merci, je suis sur que tu vas y arriver :-)

--
Philippe LAGARDE
www.mise-en-lumiere.org

Avatar
Fred
Fred wrote:

En gros: parcourir B et pour chaque fichier present dans B copier dans C
le fichier (NEF ou JPG) correspondant de A (meme base : %~ni) avec
l'extension associee


Ou plus simple, a partir de la racine des arborescences A B C:
for %i in (B*.*) do copy a%~ni%~xi c%~ni%~xi

Bon, j'arrete la pour ce soir ;-)
--
Frédéric

Avatar
pehache
Fred wrote:
pehache wrote:
lourde (mais pas forcément compliquée) est d'installer Cygwin (tout
un environnement Unix-like, donc bien sûr les shells), mais il est
possible qu'il y ait plus léger si ne veut qu'un shell (d'ailleurs
ça m'intéresserait aussi). Je crois que Microsoft a un produit dans
le style, aussi...


Ah la brute... pourquoi faire simple etc etc :)


Parce que je suis à l'aise en shell Unix et à peu près ignorant en langage
de commande Windows. Donc pour moi avoir un shell unix sous Windows est un
plus. Cela dit si je pouvais avoir ça sans Cygwin ça me suffirait.

--
pehache
enlever NOSPAM. etc... pour répondre / remove NOSPAM... to reply
http://pehache.free.fr/public.html


Avatar
Fred
pehache wrote:

Parce que je suis à l'aise en shell Unix et à peu près ignorant en langage
de commande Windows. Donc pour moi avoir un shell unix sous Windows est un
plus. Cela dit si je pouvais avoir ça sans Cygwin ça me suffirait.


Je n'irais pas jusqu'a dire que l'interpreteur de commande de W2K est
arrive au niveau de k/c/bash mais on commence a pouvoir faire des choses
interessantes (sans parler de wsh). Ca reste Windows mais c'est souvent
utilisable. Ceux qui couinent encore sont soit restes a command.com soit
de plutot mauvaise fois AMHA.

--
Frédéric

Avatar
pehache
Fred wrote:

Je n'irais pas jusqu'a dire que l'interpreteur de commande de W2K est
arrive au niveau de k/c/bash mais on commence a pouvoir faire des
choses interessantes (sans parler de wsh). Ca reste Windows mais
c'est souvent utilisable. Ceux qui couinent encore sont soit restes a
command.com soit de plutot mauvaise fois AMHA.


C'est possible, je ne dis pas le contraire. Sauf qu'au boulot j'utilise des
shells unix tous les jours, je les connais parfaitement et je n'ai que
rarement besoin de me plonger dans la doc. A la maison, sous Windows, mon
besoin en shell est épisodique. Quand je veux utiliser le langage de
commande Win, il faut à chaque fois que je me replonge dans les docs et Cie,
j'y passe 10 fois plus de temps que si j'utilisais un shell unix, et le coup
d'après rebelote parce qu'en général j'ai tout oublié entre temps.

--
pehache
enlever NOSPAM. etc... pour répondre / remove NOSPAM... to reply
http://pehache.free.fr/public.html

Avatar
Fred
Philippe LAGARDE wrote:

Pas exactement. J'ai :

├───A
│ file01.nef
│ file02.nef
│ file03.nef
│ file04.jpg
│ file05.nef
│ file06.jpg
│
├───B
│ file02.JPG <------
│ file04.jpg
│
└───C


Oui, evidemment, my mistake. L'heure etait un peu tardive, me suis rendu
compte de l'erreur au lit :-)

for %i in (B*.*) do if exist a%~ni.nef ( copy a%~ni.nef c%~ni.nef )
else ( copy a%~ni.jpg c%~ni.jpg )

Depart
├───A
│ file01.nef
│ file02.nef
│ file03.nef
│ file04.jpg
│ file05.nef
│ file06.jpg

├───B
│ file01.jpg
│ file02.jpg
│ file04.jpg

└───C


Arrivee

├───A
│ file01.nef
│ file02.nef
│ file03.nef
│ file04.jpg
│ file05.nef
│ file06.jpg

├───B
│ file01.jpg
│ file02.jpg
│ file04.jpg

└───C
file01.nef
file02.nef
file04.jpg

--
Frédéric

Avatar
Fred
pehache wrote:

C'est possible, je ne dis pas le contraire. Sauf qu'au boulot j'utilise des
shells unix tous les jours, je les connais parfaitement et je n'ai que
rarement besoin de me plonger dans la doc. A la maison, sous Windows, mon
besoin en shell est épisodique.


C'est le syndrome des bebes canards ;-) Je sais, je suis un peu dans la
meme situation mais je me soigne...

--
Frédéric

1 2 3