Frage ist gelöstMit einer Batch Datei eine andere Batch Datei erstellen...
01.02.2006
22:50:00 Uhr7977 Aufrufe
5 Antworten
22:50:00 Uhr
5 Antworten
Noch nicht bewertet
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
fpschultze schreibt am 02.02.2006 um 00:05:06 Uhr
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
Biber schreibt am 02.02.2006 um 08:29:32 Uhr
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?
SMHAMK1985 schreibt am 02.02.2006 um 11:47:50 Uhr
Hallo,
erstmal Danke für eure Hilfe und habe es auch hinbekommen, aber ich habe noch eine Frage:
Wenn das script diese Zeile übernehmen soll macht er das nicht:
echo for /R %%DateiOrdner%% %%%i in (datei) do @if %%%~zi GTR %%warnsize%% echo Name >> c:\username.bat
Im username.bat bekomme ich dann folgendes:
for /R %DateiOrdner% | ## %%%i in (datei) do @if FEHLT ## | %%~zi GTR %warnsize% echo Name
Würde mich freuen wenn ihr mir dabei auch helfen würdet.
DANKE
MfG
erstmal Danke für eure Hilfe und habe es auch hinbekommen, aber ich habe noch eine Frage:
Wenn das script diese Zeile übernehmen soll macht er das nicht:
echo for /R %%DateiOrdner%% %%%i in (datei) do @if %%%~zi GTR %%warnsize%% echo Name >> c:\username.bat
Im username.bat bekomme ich dann folgendes:
for /R %DateiOrdner% | ## %%%i in (datei) do @if FEHLT ## | %%~zi GTR %warnsize% echo Name
Würde mich freuen wenn ihr mir dabei auch helfen würdet.
DANKE
MfG
fpschultze schreibt am 02.02.2006 um 12:31:29 Uhr
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







