quakemarine1
Goto Top

get filenames von allen.dat

hiho

ich habe eine exe datei die mit input über commando zeile gefütter werden muss
leider kann diese exe keine wildcards * und ich muss jeden input wortgetreu eintragen

der cmd den die exe verlangt ist:

bla.exe -load c:\..\hallo1.dat -load c:\..\hallo2.dat ..... -save c:\..\alles.dat

problem ist:
alle dat dateien kleiner 88byte sind nicht zu benutzen
also lösch ich die weg

if exist "c:\..\*.dat" for %%i in (*.dat) do if %%~zi==88 del "%%i"

durch das löschen haben ich nun aber eine unbekannte anzahl von dat dateien und keine fortlaufende nummerierung
ich weis also nicht was ich "-load .." soll und wieviele "-load" ich brauche

evtl kann man alle dat kleiner 88kb auch skippen - dann ist die nummerierung fortlaufend aber die anzahl der dat immer noch variabel
so viele dat wie es sind so viele "-load" befehle brauche ich

ich wolle nun per batch alle *.dat namen lesen und entsprechend als parameter an die exe übergeben

hallo1.dat
hallo2.dat
..
hallo10.dat

nach löschen der 88kb files bleiben

hallo1.dat
hallo3.dat
hallo8.dat

ergo ist cmd für exe

bla.exe -load c:\..\hallo1.dat -load c:\..\hallo3.dat -laod C:\..\hallo8.dat -save c:\..\alles.dat

andre

Content-Key: 108261

Url: https://administrator.de/contentid/108261

Printed on: April 26, 2024 at 09:04 o'clock

Member: SlainteMhath
SlainteMhath Feb 06, 2009 at 12:13:49 (UTC)
Goto Top
Hi,

set load=
for %%i in (*.dat) do set load=%load% -load %%i
bla.exe %load% -save alles.dat

(aus dem kopf und ohne Gewähr)

lg.
Slainte
Member: bastla
bastla Feb 06, 2009, updated at Oct 18, 2012 at 16:37:44 (UTC)
Goto Top
@SlainteMhath: Wird an fehlender "delayedexpansion" scheitern ...
Eine ähnliche Anforderung hatten wir heute hier - sollte sich durch Abändern der "for"-Zeile anpassen lassen...

Grüße
bastla