builder4242
Goto Top

Unterschied robocopy BATCH auf 2003 und 2008 - Was ist hier Faul?

Hallo,


ich versuche verzweifelt mein neues Sicherungsbatch zum laufen zu bringen.

@echo off & setlocal

REM Sicherung des Servers DC01 am %DATE% um %TIME% gestartet

for /f "tokens=3" %%i in ('robocopy /?^|find "Started"') do (  
    IF "%%i" == "Mon" set "woTag=Montag"  
    IF "%%i" == "Tue" set "woTag=Dienstag"  
    IF "%%i" == "Wed" set "woTag=Mittwoch"  
    IF "%%i" == "Thu" set "woTag=Donnerstag"  
    IF "%%i" == "Fri" set "woTag=Freitag"  
    IF "%%i" == "Sat" set "woTag=Samstag"  
    IF "%%i" == "Sun" set "woTag=Sonntag"  
)

echo Heute ist %woTag%

REM robocopy gestartet...

::robocopy C:\ b:\dc01\%woTag%\C\ /MIR /PURGE
::robocopy D:\backup\546TANK\ \\10.10.1.204\backup\dc01\%woTag%\D\ /MIR /PURGE

REM Sicherung am %DATE% um %TIME beendet.

Auf dem Windows Server 2003 funktioniert es ohne Probleme, auf dem 2008 wandelt er den Wochentag nicht um.

Ich habe schon einen merkwürdigen Unterschied festgestellt, und zwar suche ich auf dem 2003 nach "Startet" und auf dem 2008 nach Gestartet.
Entsprechend lautet auch die Ausgabe:
"Started : Wed Jun 02 12:04:57 2010" oder " Gestartet: Wed Jun 02 12:05:53 2010":

Was habe ich im Batch übersehen?


Danke schonmal im Vorraus

Content-ID: 144051

Url: https://administrator.de/contentid/144051

Ausgedruckt am: 22.11.2024 um 05:11 Uhr

TuXHunt3R
TuXHunt3R 02.06.2010 um 12:36:14 Uhr
Goto Top
Hallo

Eventuell ein Sprachproblem. Laufen die zwei Server mit unterschiedlichen Sprachen?

Gruss
TuXHunT3R
builder4242
builder4242 02.06.2010 um 12:41:12 Uhr
Goto Top
Nein, alles Deutsch wie gesagt, beim 2003 ist es komischerweise startet und auf 2008 gestartet?
Snowman25
Snowman25 02.06.2010 um 12:56:45 Uhr
Goto Top
Hallo @builder4242,

Zitat von @builder4242:
for /f "tokens=3" %%i in ('robocopy /?^|find "Started"') do (
"Started : Wed Jun 02 12:04:57 2010" oder " Gestartet: Wed Jun 02 12:05:53 2010":

und jetzt schau dir nochmal genau die Unterschiede an!

mach lieber
for /F "tokens=3" %%i in ('robocopy /?|find /I "start"') do (

Gruß
Snow
builder4242
builder4242 02.06.2010 um 13:02:14 Uhr
Goto Top
ja, funktioniert aber auf dem 2008 trotzdem nicht, ich hab auf dem 2008 ja schon Gestartet stehen gehabt
bastla
bastla 02.06.2010 um 14:03:15 Uhr
Goto Top
... und wenn Du "tokens=2" verwendest?

Grüße
bastla
builder4242
builder4242 02.06.2010 um 14:14:32 Uhr
Goto Top
Danke, das warsface-smile

Was bedeutet der Token?
bastla
bastla 02.06.2010 um 15:34:34 Uhr
Goto Top
Hallo builder 4242!

Damit legst Du fest, welche Teile des Textes Du verwenden willst. Da Leerzeichen (und TAB) Standardtrennzeichen sind (ansonsten kannst Du das Trennzeichen mit "delims" festlegen), wird durch Deine "for /f"-Schleife der Text "Gestartet: Wed Jun 02 12:05:53 2010" in die Teile
Gestartet:
Wed
Jun
02
12:05:53
2010
zerlegt - davon willst Du den Teil Nr 2 ...

Grüße
bastla
Snowman25
Snowman25 02.06.2010 um 15:44:45 Uhr
Goto Top
jetzt wird aber die englische Version wieder nicht funktionieren. Hier ist der 2. Teil ein :
builder4242
builder4242 02.06.2010 um 17:23:27 Uhr
Goto Top
doch jetzt funktioniert es

aber wie kann ich es als Tasks täglich ausführen lassen?
Snowman25
Snowman25 02.06.2010 um 17:27:05 Uhr
Goto Top
da würden sich taskplaner oder at-Befehl anbieten
builder4242
builder4242 02.06.2010 um 17:49:18 Uhr
Goto Top
welches tool nutz ihr um mails per batch zu verschicken?
Snowman25
Snowman25 02.06.2010 um 17:57:02 Uhr
Goto Top
blat.exe
Ein Kommentar muss mehr als 30 Zeichen enthalten! Bitte geben Sie einen aussagefähigen Kommentar ein.
bastla
bastla 03.06.2010 um 10:05:41 Uhr
Goto Top
@Snowman25
jetzt wird aber die englische Version wieder nicht funktionieren.
Den heutigen Wochentag in der aktuellen BS-Sprache solltest Du jedenfalls so erhalten:
@echo off & setlocal
set G=%temp%\GetWeekdayName.vbs
>%G% echo WScript.Echo WeekdayName(Weekday(Date))

for /f %%i in ('cscript //nologo %G%') do set "WoTag=%%i"  
echo %woTag%
Für die (auf 2 Zeichen abgekürzte) Schreibweise:
>%G% echo WScript.Echo WeekdayName(Weekday(Date),1)
Grüße
bastla