markus-tausendfreund
Goto Top

Batch Menü zur Definition 2er Datumsvariablen

Vorbereitung zum erstellen von Batch-Prozessen

Hallo an alle,
vielleicht kann mir jemand mit einer Idee helfen.

Grund für meine Anfrage ist, ich benötige Variablen die mir ein Startdatum un ein Enddatum definieren damit ich einen Zeitrahmen für einen Datenexport definieren kann.

Nach dem Starten der Batch soll der User nach einem Start und einem Eddatum gefragt werden das 8stellig yyyymmdd einzugeben ist. Für jedes soll eine Varible geschrieben werden.

Date1 und Date2

REM Erstellen des Extracts
@echo off

:: Wir verwenden hier das WinXP Format
FOR /F "tokens=1,2,3,4 delims=/. " %%a in ('date/T') do set CDATE=%%c%%b%%a  

:: Anpassung des Lot-files
sed s/20071012/%DATE1%/i e:\LOT\20071014.Lot> "1.lot"  
sed s/20071012/%DATE2%/i e:\LOT\1.Lot> "2.lot"  
sed s/20071014.Xml/"%CDATE%.xml"/I e:\LOT\BMW\2.Lot> "export-%CDATE%.lot"  

REM copieren des LOT-Files
copy export-%CDATE%.lot "D:\"  

REM führe *.lot Datei aus
"D:\extract.exe" "export-%CDATE%.lot"  

del 1.lot
del 2.lot
del export-%CDATE%.lot
del "D:\export-%CDATE%.lot"  

echo Alle Aufgaben sind erledigt, bitte Files Überprüfen.
pause
exit

Grüße
Markus

Content-ID: 71122

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

Ausgedruckt am: 22.11.2024 um 16:11 Uhr

Biber
Biber 16.10.2007 um 21:48:10 Uhr
Goto Top
Moin Markus,

die interaktive Abfrage eines Wertes per Batch funktioniert über "SET /P".
(Brauchbare) Hilfe dazu am CMD-Prompt mit "Set /?".

Also In Deinem Beispiel:
...
:: Wir verwenden hier das WinXP Format
FOR /F "tokens=1,2,3,4 delims=/. " %%a in ('date/T') do set CDATE=%%c%%b%%a  
Echo "Das Datum 8stellig im ANSI-Format JJJJMMTT eingeben -z.B. %cdate% für %date%.  
Set /p "Date1=Von-Datum [JJJJMMTT] :"  
Set /p "Date2=Bis-Datum [JJJJMMTT] :"  
....

Oder habe ich Deine Frage falsch verstanden?

Grüße
Biber
markus-tausendfreund
markus-tausendfreund 17.10.2007 um 10:53:21 Uhr
Goto Top
Herzlichen Dank Biber.

Funktioniert einwandfrei.