Leerzeichen in DOS-Datumsausgabe verhindern

ich_bins

New member
hallo zusammen,

ich hab folgendes Problem:

ich lasse bei Backups von einer batchdatei ein Logfile anlegen, dass mir ein einfaches Auslesen
der gemachten Backps ermöglicht. Das Logfile beinhaltet im Dateinamen das aktuelle Datum.

Unter WinXP ist das kein Problem, weil XP in der Kommandozeile auf "echo %date%" mit z.b. mit
23.11.2005 antwortet, aber bei meinem W2K-Rechner funzt das net, weil unter W2K das Datum als
z.b. Mi 23.11.2005 ausgegeben wird und der Logfilename dann nach dem Leerzeichen zwischen
Mi und 23. abgeschnitten wird.
Wie lässt sich das beheben?

Für Tipps und Hilfe in dieser Sache wäre ich euch sehr dankbar

gruss...ich
 

joscha

New member
schon mal nachgeschaut ob du im w2k das format der datumseinstellung ändern kannst. dies sollte eigentlich dann auch auf der cmd anders angezeigt werden.
 
E

Easyrider

Guest
VBScript

HEY, du Knödel. weils mich auch interessiert hat hab ich es mir man angeschaut:

Also, *räusper*:

%date% gibt bei dir in Win2K also Mi 30.11.2005 aus.
Dann lass halt die ersten drei stellen weg! 8o

Und so gehts, pass auf ;)

Code:
Echo %Date:~2,14%
Erklärung:
Die erste Zahl steht für die erste Stelle ab der Ausgegeben werden soll.
Die zweite Zahl gibt die letzte Stelle an ab der die Ausgabe aufhört.

Habe leider kein Win2K zum testen aber sollte funktionieren.

PS:
versuchs mal so, da du ein Backup machst macht es sinn die Datei auch gleich so zu benennen, dass man sie auch wiederfindet.
(altes Problem mit dem Sortieren nach Datum)
Für XP:
Code:
echo %date:~6,4%%date:~3,2%%date:~0,2%
Für 2K(konnte es nicht testen):
Code:
set filename=%date:~4,4%%date:~9,2%%date:~12,2%



Steig einfach auf VBScript um,
ist auch garn nicht so schwer wie sich das im ersten Moment anhört.
Du kannst deine Batch-Codezeilen einfach weiterverwenden in dem du sie mit z.B. WSHShell.run "ping x.y.z.z -t" laufen lässt.
Oder du Übergibt die Parameter aus deiner Batch Datei an das Script und arbeitest dann nur noch mit dem Script weiter.

Oder du baust ein Script das dir in deine Logdatei ein Datum schreibt und zwar so wie du es haben Möchtest.
Siehe auch: Logger in VBS
Und zu dem ganzen Script kram guckst du hier(seite eines Kumpels):DIESEYER - VBScripting

Ich bin dir auch gern dabei behilflich, insbesondere mit Helpfiles zu der Scriptsprache usw.

Ich hoffe ich habe das jetzt nich unnötig verkompliziert.
 

ich_bins

New member
hey du selber knödel :p

ich danke dir für deine Hilfe, funzt super.
Das mit VB hab ich mir auch schon überlegt, aber is halt ein Zeitproblem mich da einzuarbeiten.
DOS kenn ich halt noch aus meinen PC-Anfangszeiten, wenn auch net wirklich wie du siehst ;-)

also, danke nochmal
gruss...ich
 
Oben