Mit Batch-Datei andere Batch-Datei aufrufen und ausführen
ich habe in verschiedenen Verzeichnissen Dateien liegen, die ich per batch aufrufen muss um diese in ein Zahlungsverkehrprogramm einzulesen.
hier der Aufruf (Beispiel):
c:\runautotransfer.bat h:\inst dtint0 delete
Im Beispiel wird die Datei "dtint0" eingelesen.
Die Anzahl der zu verarbeitenden Dateien ist nicht bekannt.
Die Routine liefert je Datei einen Errorcode zurück, z. B. 10 = alles OK
Wie muss man vorgehen? DANKE!
hier der Aufruf (Beispiel):
c:\runautotransfer.bat h:\inst dtint0 delete
Im Beispiel wird die Datei "dtint0" eingelesen.
Die Anzahl der zu verarbeitenden Dateien ist nicht bekannt.
Die Routine liefert je Datei einen Errorcode zurück, z. B. 10 = alles OK
Wie muss man vorgehen? DANKE!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 62793
Url: https://administrator.de/contentid/62793
Ausgedruckt am: 25.11.2024 um 22:11 Uhr
3 Kommentare
Neuester Kommentar
Sind die Verzeichnisse immer gleich?
Mal allgemein wür dich sso machen:
Wenn du mehrere Verziechnisse hast kannst du das ganze entweder mehrmals untereinander machen oder, was schöner ist, Die Verzeichnisse in eine Datei untereinander schreiben (z.b. Verzeichnisse.txt) und eine Schleife zusätzlich rumherum die die Verzeichnisse aus de rDatei ausliest. Das würde dann so aussehen:
miniversum
Mal allgemein wür dich sso machen:
@echo off
FOR /F "delims=" %%i in ('dir /b /a-d h:\inst') do call c:\runautotransfer.bat "%%~dpi" "%%~ni" delete
FOR /F "delims=" %%i in ('dir /b /a-d h:\inst') do call c:\runautotransfer.bat "%%~dpi" "%%~ni" delete
Wenn du mehrere Verziechnisse hast kannst du das ganze entweder mehrmals untereinander machen oder, was schöner ist, Die Verzeichnisse in eine Datei untereinander schreiben (z.b. Verzeichnisse.txt) und eine Schleife zusätzlich rumherum die die Verzeichnisse aus de rDatei ausliest. Das würde dann so aussehen:
@echo off
FOR /F "delims=" %%a in ('type Verzeichnisse.txt') do (
FOR /F "delims=" %%i in ('dir /b /a-d "%%~a"') do call c:\runautotransfer.bat "%%~a" "%%~ni" delete
)
FOR /F "delims=" %%a in ('type Verzeichnisse.txt') do (
FOR /F "delims=" %%i in ('dir /b /a-d "%%~a"') do call c:\runautotransfer.bat "%%~a" "%%~ni" delete
)
miniversum
Moin vossi75,
so kommen wir nicht weiter... oder nur sehr schleppend.
Diese Angaben sind IMHO nicht ausreichend, um eine auf Anhieb funktionierende Lösung hier abladen zu können.
Wenn Du schon den Inhalt der c:\runautotransfer.bat nicht posten möchtest, dann bitte kläre uns doch wenigstens über die Bedeutung der Parameter "h:\inst" und "dtint0" auf.
Der erste Parameter "h:\inst" ist ein Verzeichnis, in dem ... Dateien vermutet werden? ..mit bestimmten Namen??
Und der zweite Parameter ist..?? Eine Datei?? ...ein Teil eines Dateinamens??? Eine Datenbank??
So lässt sich doch nur raten, welcher Pfad nicht gefunden wird laut Deiner Fehlermeldung.
Bzw. welche möglichen Fehler offensichtlich schon außerhalb der runautotransfer abgefangen werden müssen, da sie nicht darauf eingestellt ist, dass Pfade nicht gefunden werden können...
Bitte ein bisschen mehr Info.
Grüße
Biber
so kommen wir nicht weiter... oder nur sehr schleppend.
ich habe in verschiedenen Verzeichnissen Dateien liegen, die ich per batch aufrufen muss um diese in ein Zahlungsverkehrprogramm einzulesen.
hier der Aufruf (Beispiel):
c:\runautotransfer.bat h:\inst dtint0 delete
hier der Aufruf (Beispiel):
c:\runautotransfer.bat h:\inst dtint0 delete
Diese Angaben sind IMHO nicht ausreichend, um eine auf Anhieb funktionierende Lösung hier abladen zu können.
Wenn Du schon den Inhalt der c:\runautotransfer.bat nicht posten möchtest, dann bitte kläre uns doch wenigstens über die Bedeutung der Parameter "h:\inst" und "dtint0" auf.
Der erste Parameter "h:\inst" ist ein Verzeichnis, in dem ... Dateien vermutet werden? ..mit bestimmten Namen??
Und der zweite Parameter ist..?? Eine Datei?? ...ein Teil eines Dateinamens??? Eine Datenbank??
So lässt sich doch nur raten, welcher Pfad nicht gefunden wird laut Deiner Fehlermeldung.
Bzw. welche möglichen Fehler offensichtlich schon außerhalb der runautotransfer abgefangen werden müssen, da sie nicht darauf eingestellt ist, dass Pfade nicht gefunden werden können...
Bitte ein bisschen mehr Info.
Grüße
Biber