Programmieren - alles kontrollieren 4.935 Themen, 20.621 Beiträge

Variablenbehandlung in Batchprogrammen (DOS)

Nixa / 2 Antworten / Flachansicht Nickles

Ich habe ein Batchprogramm mit einem Befehl geschrieben, der für alle Dateien eines Verzeichnisses einen DB2-Befehl absetzt:

for /r %%a in (*.del) do "db2 load from of del modified by coldel; into "

In der Variable %%a steht der Filename mit Endung (in dem Fall .del).
Für die ersten 2 Verwendungen ist das auch in Ordnung. Die Tabelle, wo die jeweiligen Daten hinein geladen werden sollen, heißt genauso wie die Datei, nur halt ohne Dateierweiterung.
Und genau da liegt mein Problem. Wie kann ich es schaffen, das bei der letzten Variablenbenutzung der Dateiname ohne die Endung eingesetzt wird ?
Gibt es die Möglichkeit, die letzten 4 Stellen des Variableninhaltes zu streichen oder irgendeine andere Methode ?
Vielleicht durch ausschalten der Dateierweiterung, aber geht das unter dos ....
Helft mir !!!

bei Antwort benachrichtigen
flosch0815 Nixa „Variablenbehandlung in Batchprogrammen (DOS)“
Optionen

Meines Wissens funktioniert das, was Du da vorhast nicht in DoS. Ich würde mir ein 3 - zeiliges kleines Programm in Basic, C oder Pascal oä schreiben.(also alles 'alte' Programmiersprachen, die keine 50 verschiedenen *.dll's brauchen und gut für MsDos zu nutzen sind). da sehe ich doch das Problem mit der Wertübergabe. Da müsste man was in eine Datei schreiben... In solchen Dingen und mit Variablen ist Dos ziemlich (sehr) unflexibel für unsere heutigen Begriffe
Sorry, das ich dir nicht helfen konnte...

Florian

bei Antwort benachrichtigen