Dos Batch %%a

lucBason

Cadet 4th Year
Registriert
Juli 2003
Beiträge
65
hallo,

ich hab da ein problem mit einem dos Batch.

ich hab da ein programm das mit dem kommando

>Prog bild01.jpg /s >report.txt

header-informationen ausliest und sonst noch einige kunststücke aufführt um sicher zu stellen das das file auch wirklich ein bild ist.

nun ist aber mein problem da s ich einfach zu viele dateien habe um das einzeln durch zu gehen.

deshalb habe ich folgenden batch geschrieben:

//info.bat
@echo off
FOR %%a IN (%1\*.jpg) DO Prog.exe %%a /S >%%a.txt
echo Fertig!

nun ist aber mein problem das nur vom letzten durchlaufene file iein report in eine datei namens %a.txt geschrieben wird.

was ich hier nicht verstehe ist:

warum %a.txt und nicht der jeweilige dateiname.txt
und warum nur ein report?

schreibe ich statt ">%%a.txt" - ">>report.txt wird jeder report einfach in der txt unten dran gehängt.
ich möchte jedoch für jedes file einen eigenes reportfile!

(falls jetzt jemand denkt es handelt sich hier um was illegales, kann ich versichern das dem NICHT so ist!!!)

ach ja, ich habe zwei verzeichnisse!
1.) D:\jpgs (mit den bildern)
2.) D:\Tools (info.bat, prog.exe)

commando ist D:\Tools\info.bat D:\jpgs

ich hoffe es kann mir jemand helfen!
danke auf jeden fall im voraus!

ciao
 
%%a.txt übergibt %a, also wird %a.txt draus ---> anstatt von >%%a.txt einfach >%a.txt benutzen

falls du nur eine report.txt für alle haben willst dann >> anstelle von > (>> = anhängen)


ochnee
 
Zuletzt bearbeitet:
hallo,
danke für deine schnelle antwort!

das hab ich schon versucht!
es kommt dann einfach a.txt dabei raus.
wie gesagt, ich möchte gerne den dateinahmen vom jpg bekommen.

">>" geht zwar so weit das ich von jedem file einen report bekomme, nur ist der dann in einem einzigen file und das will ich eben nicht.

danke!

ciao und grüsse
 
Zurück
Oben