Mit einer Batch Datei eine andere Batch Datei erstellen...
Hallo,
ich habe mal eine Frage:
Ich möchte gerne mit einer Batch Datei eine andere Batch Datei erstellen. Aber irgend wie bekomme ich das nicht hin. z.B. wenn ich das so mache:
echo set jahr=%date:~-4% >> c:\username.bat
echo set monat=%date:~-7,2% >> c:\username.bat
echo set tag=%date:~-10,2% >> c:\username.bat
werden die Variablen in die Neue Batch datei schon umgewandelt eingefügt. Und mit der 2. Datei kann ich nichts anfangen weil die Variablen nicht kennt.
Gibt es eine Methode die sachen 1 zu 1 zu übernehmen?
Kleines Beispiel:
Batch1.bat:
echo set jahr=%date:~-4% >> c:\username.bat
echo set monat=%date:~-7,2% >> c:\username.bat
echo set tag=%date:~-10,2% >> c:\username.bat
username.bat:
set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
Würde mich freuen wenn mir jemand helfen könnte!
MfG
ich habe mal eine Frage:
Ich möchte gerne mit einer Batch Datei eine andere Batch Datei erstellen. Aber irgend wie bekomme ich das nicht hin. z.B. wenn ich das so mache:
echo set jahr=%date:~-4% >> c:\username.bat
echo set monat=%date:~-7,2% >> c:\username.bat
echo set tag=%date:~-10,2% >> c:\username.bat
werden die Variablen in die Neue Batch datei schon umgewandelt eingefügt. Und mit der 2. Datei kann ich nichts anfangen weil die Variablen nicht kennt.
Gibt es eine Methode die sachen 1 zu 1 zu übernehmen?
Kleines Beispiel:
Batch1.bat:
echo set jahr=%date:~-4% >> c:\username.bat
echo set monat=%date:~-7,2% >> c:\username.bat
echo set tag=%date:~-10,2% >> c:\username.bat
username.bat:
set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
Würde mich freuen wenn mir jemand helfen könnte!
MfG
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 25012
Url: https://administrator.de/forum/mit-einer-batch-datei-eine-andere-batch-datei-erstellen-25012.html
Ausgedruckt am: 23.04.2025 um 14:04 Uhr
5 Kommentare
Neuester Kommentar

Hallo,
einfach die Prozentzeichen verdoppeln:
echo set jahr=%%date:~-4%% >> c:\username.bat
echo set monat=%%date:~-7,2%% >> c:\username.bat
echo set tag=%%date:~-10,2%% >> c:\username.bat
Gute Nacht.
Peter
einfach die Prozentzeichen verdoppeln:
echo set jahr=%%date:~-4%% >> c:\username.bat
echo set monat=%%date:~-7,2%% >> c:\username.bat
echo set tag=%%date:~-10,2%% >> c:\username.bat
Gute Nacht.
Peter
Moin SMHAMK1985,
Eine Fußnote noch zur richtigen Lösung von Peter:
Beim Schreiben der ersten Zeile der neuen Batch solltest Du mit ">" sicherstellen, dass eine neue Datei angelegt wird. Mit ">>" werden ja immer nur neue Zeilen angefügt.
echo set jahr=%%date:~-4%% > c:\username.bat
echo set monat=%%date:~-7,2%% >> c:\username.bat
echo set tag=%%date:~-10,2%% >> c:\username.bat
Gruß Biber
P.S. @Weiricth :
Ist Deine Antwort im richtigen Thread gelandet oder hat Frank Scholl Datenbankprobleme?
Eine Fußnote noch zur richtigen Lösung von Peter:
Beim Schreiben der ersten Zeile der neuen Batch solltest Du mit ">" sicherstellen, dass eine neue Datei angelegt wird. Mit ">>" werden ja immer nur neue Zeilen angefügt.
echo set jahr=%%date:~-4%% > c:\username.bat
echo set monat=%%date:~-7,2%% >> c:\username.bat
echo set tag=%%date:~-10,2%% >> c:\username.bat
Gruß Biber
P.S. @Weiricth :
Ist Deine Antwort im richtigen Thread gelandet oder hat Frank Scholl Datenbankprobleme?

Hallo.
Um in username.bat das "%%i" hinzubekommen, musst Du im ECHO-Befehl "%%%%i" schreiben.
Gruß
Peter
Um in username.bat das "%%i" hinzubekommen, musst Du im ECHO-Befehl "%%%%i" schreiben.
Gruß
Peter