PlasikPackung 10 Geschrieben 16. Juli 2003 Melden Teilen Geschrieben 16. Juli 2003 hallo, 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! falls ich das theme verfehlt habe könntet ihr mir ja ein board sagen wo ich hiermit richtig bin!? danke auf jeden fall im voraus! ciao Zitieren Link zu diesem Kommentar
Assitburn 10 Geschrieben 16. Juli 2003 Melden Teilen Geschrieben 16. Juli 2003 Probier es mal damit, daß Du die Variable wie folgt angiebst: %a% Hatte letztens ein ähnliches Problem. Damit müßte es klappen. Cu Carsten Zitieren Link zu diesem Kommentar
PlasikPackung 10 Geschrieben 16. Juli 2003 Autor Melden Teilen Geschrieben 16. Juli 2003 hallo! ich check das einfach nicht! hab jetzt versucht alle %%a variablen in %a% zu tauschen! - dabei kommt dann .txt raus aber ebenfalls nur mit einem report vom letzten file. und nur die letzte variable hab ich auch versucht von %%a zu %a%. - das selbe ergebniss. achja, ich muss das unter 98 machen! :rolleyes: danke ciao Zitieren Link zu diesem Kommentar
real_tarantoga 11 Geschrieben 16. Juli 2003 Melden Teilen Geschrieben 16. Juli 2003 wenn du eine for-befehl direkt aus der console auffrufst, darf der ersatz nur als "%A" markiert werden. solltest du aus einem batch heraus eine for-schleife starten, dann muss es "%%A" heissen Zitieren Link zu diesem Kommentar
PlasikPackung 10 Geschrieben 16. Juli 2003 Autor Melden Teilen Geschrieben 16. Juli 2003 ist den bei diesem commando-string ein unterschied ob unter win2k/xp oder 98? es klappt einfach nicht! es kommt immer nur ein file (%a.txt) dabei raus. also immer das letzte in der schleife. ich verwende %%a, da ich es über eine batch-datei ausführe. danke ciao! Zitieren Link zu diesem Kommentar
grizzly999 11 Geschrieben 16. Juli 2003 Melden Teilen Geschrieben 16. Juli 2003 Also ich glaube, es geht nur mit einer Datei, entweder Anhänegn (>>) oder Erstezen (>). Batch ist eben keine richtige Programmiersprache, in der man solche Sachen sinnvoll realisieren kann. Vielleicht gibt es einen Workaround, deshalb poste ich dir mal Links zu Batch- Programmierung (mit Beispielen) http://www.antonis.de/dos/batchtut/bat-kurs/index.htm#00 http://www.mirkes.de/de/freeware/byme/batch.php http://www.ericphelps.com/batch/samples/samples.htm http://www.pressroom.com/~tglbatch/ http://serviceftp.flashnet.it/simtel.net/msdos/batchutl.html grizzly999 Zitieren Link zu diesem Kommentar
PlasikPackung 10 Geschrieben 16. Juli 2003 Autor Melden Teilen Geschrieben 16. Juli 2003 hallo, danke ür die zahlreichen antworten! habs nun auf w2k versucht. - hat geklappt! so wie ich es am anfang gepostet hab lief es unter w2k. das sind halt so gründe warum man 98 meiden sollte! (nicht weil es soooo schlecht ist, sondern weill man einfach nicht mehr sagen kann woran man liegt!) jedenfalls danke für die links! ich schau mir das gleich mal an. tschüss Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.