Hallo,
Ich möchte folgendes erreichen:
Eine Batch soll Eine Datei schreiben:
echo „Server PW“ >"%USERPROFILE%\Desktop\Server PW.txt"
Soll diese Datei aber mehrfach erstellen, doch würde mann es so machen:
:Start
echo „Server PW“ >"%USERPROFILE%\Desktop\Server PW.txt"
goto Start
Würde die batch die Datei immer überschreiben
Die Batch soll am Ende einfach 001, 002, 003 … anhängen
oder am Besten eine zufallszahl schade das das nicht geht:
Start
echo „Server PW“ >"%USERPROFILE%\Desktop\Server PW %Random%.txt"
goto Start
Wie ereiche ich das die batch die Datei immer umbenennt, ohne das mann es immer in der Batch einfügen muss:
echo „Server PW“ >"%USERPROFILE%\Desktop\Server PW.txt"
echo „Server PW“ >"%USERPROFILE%\Desktop\Server PW 002.txt"
echo „Server PW“ >"%USERPROFILE%\Desktop\Server PW 003.txt"
Culles
19. März 2011 um 23:38
2
Hallo,
wie wär’s, wenn du die Zeit zur Unterscheidung verwenden würdest:
copy Server PW „Server PW %date:~6,4%%date:~3,2%%date:~0,2%%time:~0,2%%time:~3,2%%time:~6,2%.txt“
liefert beispielsweise "Server PW JJJMMTThhmmss .txt
Ich glaube, das ist einfacher und eindeutiger als ein Zähler.
LG Culles
Hallo
oder am Besten eine zufallszahl schade das das nicht geht:
:Start
echo „Server PW“ >"%USERPROFILE%\Desktop\Server PW %Random%.txt"
goto Start
Bei mir unter Windows 7 Home Premium 64 Bit funktioniert deine Lösung einwandfrei. Ich habe vor dem goto noch
ping 127.0.0.1 -n 6 \> NUL
eingefügt, dies führt zu einer Wartezeit von 5 Sekunden bevor eine neue Datei erzeugt wird. Sonst alles copy paste.
Was macht denn die Batch bei dir? Irgendwelche Fehlermeldungen?
Alex
Eine Batch soll Eine Datei schreiben:
echo „Server PW“ >"%USERPROFILE%\Desktop\Server PW.txt"
Die Batch soll am Ende einfach 001, 002, 003 … anhängen
Hallö Zero,
das von 000-999 kann man mit 3 For-Schleifen erreichen, her habe ich nur zwei, also 00-99 eingebaut.
Insgesamt wird keine neue Datei wie geplant in der Art
C:\test\Dateiname %1 .txt
erzeugt, k.A. warum nicht.
Wenn du
if %abc%=1 goto Ende
löschst siehst du in notepad daß schon Namen mit Index 00-99 erzeugt werden.
Gruß
Reinhard
Inhalt von C:\test\DateiIndex3.bat
echo C:\test\Dateiname%1.txt >>C:\test\DateiIndex.txt
if %abc%=1 goto Ende
lfnfor On
if not exist C:\test\Dateiname%1.txt goto Weiter
Goto Ende
Weiter
Set abc=1
echo %1 > C:\test\Dateiname%1.txt
Ende
Inhalt von C:\test\DateiIndex2.bat
lfnfor On
for %%d in (0 1 2 3 4 5 6 7 8 9 ) do C:\test\DateiIndex3.bat %1%%d
Inhalt von C:\test\DateiIndex1.bat
Del C:\test\DateiIndex.txt
lfnfor On
for %%d in (0 1 2 3 4 5 6 7 8 9 ) do C:\test\DateiIndex2.bat %%d