Discussion:
Wochentag per CMD-Script herausbekommen
(zu alt für eine Antwort)
Andrej Kluge
2010-09-29 09:52:37 UTC
Permalink
Hallo,

Es geht nicht um MS-DOS, sondern um die Command-Shell von Windows Server
2003, aber vielleicht kann mir trotzdem jemand helfen:

Ich möchte in einem Batch-File den aktuellen Wochentag herausbekommen und in
eine Umgebungsvariable schreiben. Gibt es hierfür vorhandene Befehle, oder
muß ich auf 3rd-party tools zurückgreifen?

Am liebsten wäre mir eine Ausgabe wie "Montag", aber eine Zahl (1 bzw. 0)
würde mir auch schon reichen.

Das ganze, um ein Scrip-gesteuertes Datei-Backup in dem jeweiligen
Tages-Verzeichnis zu erstellen.

Vielen Dank,
AK
Martin Freitag
2010-09-29 10:35:55 UTC
Permalink
Post by Andrej Kluge
Es geht nicht um MS-DOS, sondern um die Command-Shell von Windows Server
Warum nimmst du dann nicht eine Windows-Gruppe? ;-)
z.B. de.comp.os.ms-windows.misc
Post by Andrej Kluge
Ich möchte in einem Batch-File den aktuellen Wochentag herausbekommen
und in eine Umgebungsvariable schreiben. Gibt es hierfür vorhandene
Befehle, oder muß ich auf 3rd-party tools zurückgreifen?
Am liebsten wäre mir eine Ausgabe wie "Montag", aber eine Zahl (1 bzw.
0) würde mir auch schon reichen.
Entweder du verwendest die Windows Powershell von MS, dort stehen dir
[DateTime]::Now und Get-Date zur Verfügung, oder du holst dir das
Windows 2003 Resource Kit
<http://www.microsoft.com/downloads/en/details.aspx?FamilyID=9D467A69-57FF-4AE7-96EE-B18C4790CFFD&displaylang=en>,
dann steht dir der Befehl NOW wieder zur Verfügung. Dieser spuckt dann
aus: Wed Sep 29 12:32:25 2010
Dort kannst du dir den Wochentag dann rauszutschen. ;-)
Gruß

Martin
--
() ascii ribbon campaign - against html e-mail
/\ www.asciiribbon.org - http://www.asciiribbon.org/index-de.html
Andrej Kluge
2010-09-29 10:48:35 UTC
Permalink
Hallo,
Post by Martin Freitag
Warum nimmst du dann nicht eine Windows-Gruppe? ;-)
z.B. de.comp.os.ms-windows.misc
Weil ich gesehen habe, daß hier die Batchfile-Experten sitzen :)
Post by Martin Freitag
Post by Andrej Kluge
Am liebsten wäre mir eine Ausgabe wie "Montag", aber eine Zahl (1
bzw. 0) würde mir auch schon reichen.
Entweder du verwendest die Windows Powershell von MS, dort stehen dir
[DateTime]::Now und Get-Date zur Verfügung, oder du holst dir das
Gibt die den Wochentag dann auf deutsch aus?
Post by Martin Freitag
Windows 2003 Resource Kit
<http://www.microsoft.com/downloads/en/details.aspx?FamilyID=9D467A69-57FF-4AE7-96EE-B18C4790CFFD&displaylang=en>,
dann steht dir der Befehl NOW wieder zur Verfügung. Dieser spuckt dann
aus: Wed Sep 29 12:32:25 2010
Leider nur abgekürzt und englisch. Genauso wird es auch angezeigt, wenn man
in der Systemsteuerung das ShortDate-Format wie das LongDate-Format macht,
und dann in der Shell "date" aufruft.

Aber ich glaube, ich schreibe mir ein kleines Commandline-Progrämmchen (in
Delphi), was mit den Tag wie gewünscht ausgibt. Das ist weniger Streß :)

Danke trotzdem vielmals und Ciao
AK
Martin Freitag
2010-09-29 12:49:54 UTC
Permalink
Post by Andrej Kluge
Leider nur abgekürzt und englisch. Genauso wird es auch angezeigt, wenn
man in der Systemsteuerung das ShortDate-Format wie das LongDate-Format
macht, und dann in der Shell "date" aufruft.
Oh, und ich hab mich immer gewundert, warum das auf Win2k3 anders ist
als auf Win2k...
Naja, ob das nun Englisch ist, ist ja egal, du erwähntest, dass dir
notfalls eine Zahl reicht, da ist es das geringste Übel. ;-) Wenn es
denn unbedingt deutsch oder eine Zahl sein soll, kannst du das ja über
eine Art Array abgleichen lassen und entsprechend "übersetzt" dann
verwenden. Ob das nun für dich in Delphi oder in einer Batch-Datei
einfacher zu realisieren ist, sei dahingestellt. :-)
Gruß

Martin
--
() ascii ribbon campaign - against html e-mail
/\ www.asciiribbon.org - http://www.asciiribbon.org/index-de.html
Michael Bednarek
2010-09-29 12:29:57 UTC
Permalink
On Wed, 29 Sep 2010 11:52:37 +0200, Andrej Kluge wrote in
Post by Andrej Kluge
Es geht nicht um MS-DOS, sondern um die Command-Shell von Windows Server
Ich möchte in einem Batch-File den aktuellen Wochentag herausbekommen und in
eine Umgebungsvariable schreiben. Gibt es hierfür vorhandene Befehle, oder
muß ich auf 3rd-party tools zurückgreifen?
Am liebsten wäre mir eine Ausgabe wie "Montag", aber eine Zahl (1 bzw. 0)
würde mir auch schon reichen.
Das ganze, um ein Scrip-gesteuertes Datei-Backup in dem jeweiligen
Tages-Verzeichnis zu erstellen.
Vielleicht erreicht das folgende, was du willst.

Erstelle eine Datei, z.B. WTag.vbs mit einer Zeile:
WScript.Echo WeekdayName(Weekday(Now))

In einem Batch-File:
CScript //NoLogo WTag.vbs >WTag.tmp
Set /p WTag=<WTag.tmp
--
Michael Bednarek http://mbednarek.com/ "POST NO BILLS"
Lesen Sie weiter auf narkive:
Loading...