Batch Dateinamen alf Variable in Anwendung für cmd-eingabe

Registriert
Juni 2011
Beiträge
1
Hallo liebes Forum,

auch von mir ein kleiner großer Hilferuf.

Ich habe ein Programm, welches nur über die Kommandozeile aufgerufen werden kann. Mit diesem Programm (transf.exe) lassen sich bestimmte Dateien (*.fuxy) in ein lesbares Format (z.B. *.log) umwandeln, gleichzeitig werden in der Datei notwendige Bearbeitungsschritte durchgeführt (u.a. Entfernung Zeitstempel im Dateitext). Dazu ist folgende eingabe notwendig:

(programm) (Quelldatei) (Zieldatei), also z.B. transf Group.fuxy Group.log

Nun haben die Dateien im Namen einen Datumsschlüssel (Group_2010_11_06_1256.fuxy)

Ich habe eine Anzahl x dieser dateien in einem Ordner und würde gerne eine Stabelverarbeitung über eine Batch vornehmen. Mein ansatz dazu war, das der Dateiname in eine Variable geschrieben wird und diese Variable dann zur eingabe für das Programm genutzt wird, um dann weiter zur nächsten Datei zu rücken und dort das selbe durchzuführen. Mein bisheriger Ansatz lautet:

For /F %%i in ('dir /B *.fuxy') do set Datei=%%~ni

for %%f in (*.fuxy) do (transf "%%~ni.fuxy" "%%~ni.log")

pause

Leider kommt es in der cmd zu folgender Befehlseingabe:

transf %~ni.fuxy %~ni.log

Damit kann die transf.exe natürlich nichts anfangen und findet auch entsprechend die Dateien nicht.

Ich bin relative neu was die Programmierung mit Batch angeht, habe aber eine gewisse affinität zu Programmiersprachen. Nur leider blick ich es hier nicht. Ich würde mich freuen wenn hierzu jemand einen guten Einfall hat.

Vielen Dank für Deine/Eure Hilfe
Ergänzung ()

Habs gelöst!

Mit For /F %%i in ('dir /B *.fuxy') do set Datei=%%~ni & transf %%~ni.fuxy %%~ni.log

Beste Grüße!

KyKyske_dot_com
 
Zurück
Oben