Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Nach fertiger Batch Mail versenden

Mitglied: photographix

photographix (Level 1) - Jetzt verbinden

29.03.2010 um 15:45 Uhr, 6305 Aufrufe, 8 Kommentare

Olá @ all

beim Frühjahrsputz in unseren Servern habe ich einige sehr alte Scripte entdeckt die bei uns wichtige Sachen nochmals spiegeln.
Beispielscript unten.

Leider gefällt mit das mit der Batch aber nicht mehr so.
Die Batch schreibt immer dann eine Email wenn Sie durchgelaufen ist.
Wenn ein Fehler auftritt bekomm ich keine Mail!
Das ist nicht schön - ich hätte es gern anders rum - bin aber kein "batcher".

Meine Idee wäre ja mit II zu arbeiten. (Befehl copy II Send Mail)
Ich weiss aber nicht genau wo ich konkret II einbauen muss.


Vielleicht hat jemand einen Tipp


Danke im Voraus.


Bsp:


01.
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
02.
:: Copy von Server DATEN nach Server BACKUP auf Windows Server 2008 - Backup per Mirroring
03.
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
04.

05.
::Pfadvaribale für Blat Mailer setzen
06.
SET PATH=%PATH%;C:\Batches\Blat\
07.
set time-begin=%time:~0,8%
08.
set date-begin=%date%
09.

10.
:: Dateien spiegeln mit zuwachs (kein löschen und nur hinzufügen)
11.

12.
robocopy.exe "w:" "d:\administration" /MIR /R:10 /ZB /DCOPY:T /TEE /LOG:"d:\robolog_mir_administration.log" /NP /V
13.
robocopy.exe "\\server3\netlogon$" "D:\Netlogon Kopie" /MIR /R:10 /ZB /DCOPY:T /TEE /LOG:"D:\robolog_mir_netlogon.log" /NP /V
14.
robocopy.exe "\\server3\deploy$" "D:\Deploy" /MIR /R:10 /ZB /DCOPY:T /TEE /LOG:"D:\robolog_mir_deploy.log" /NP /V
15.
robocopy.exe "g:" "d:\framework" /MIR /R:10 /ZB /DCOPY:T /TEE /LOG:"d:\robolog_mir_framework.log" /NP /V
16.
	
17.

18.
::Mail verschicken das Batch fertig
19.
		
20.
set time-end=%time:~0,8%
21.
set date-end=%date%
22.
echo Backup Mirror Admin-Server2 Ende - vom %date-begin% - %time-begin::=:% Uhr bis %date-end% - %time-end::=:% Uhr | Blat.exe -priority 1 -to adminuser@domain.de -server smtp.domain.de -u adminuser@domain.de -pw K5EeiMB7 -debug -timestamp -log blatSMTPlog.txt -subject "Backup Mirror Admin-Server2 Ende - vom %date-begin% - %time-begin::=:% Uhr bis %date-end% - %time-end::=:% Uhr "
23.
Mitglied: Snowman25
29.03.2010 um 15:58 Uhr
Hallo photographix,

probiers mal so:
01.
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
02.
:: Copy von Server DATEN nach Server BACKUP auf Windows Server 2008 - Backup per Mirroring
03.
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
04.

05.
::Pfadvaribale für Blat Mailer setzen
06.
SET PATH=%PATH%;C:\Batches\Blat\
07.
set time-begin=%time:~0,8%
08.
set date-begin=%date%
09.
set /A fail=0
10.

11.
:: Dateien spiegeln mit zuwachs (kein löschen und nur hinzufügen)
12.

13.
robocopy.exe "w:" "d:\administration" /MIR /R:10 /ZB /DCOPY:T /TEE /LOG:"d:\robolog_mir_administration.log" /NP /V
14.
call check
15.
robocopy.exe "\\server3\netlogon$" "D:\Netlogon Kopie" /MIR /R:10 /ZB /DCOPY:T /TEE /LOG:"D:\robolog_mir_netlogon.log" /NP /V
16.
call check
17.
robocopy.exe "\\server3\deploy$" "D:\Deploy" /MIR /R:10 /ZB /DCOPY:T /TEE /LOG:"D:\robolog_mir_deploy.log" /NP /V
18.
call check
19.
robocopy.exe "g:" "d:\framework" /MIR /R:10 /ZB /DCOPY:T /TEE /LOG:"d:\robolog_mir_framework.log" /NP /V
20.
call check
21.
	
22.

23.
::Mail verschicken wenn fail=1
24.
if %fail%==1 (
25.
set time-end=%time:~0,8%
26.
set date-end=%date%
27.
echo Backup Mirror Admin-Server2 FEHLER - vom %date-begin% - %time-begin::=:% Uhr bis %date-end% - %time-end::=:% Uhr | Blat.exe -priority 1 -to adminuser@domain.de -server smtp.domain.de -u adminuser@domain.de -pw K5EeiMB7 -debug -timestamp -log blatSMTPlog.txt -subject "Backup Mirror Admin-Server2 FEHLER - vom %date-begin% - %time-begin::=:% Uhr bis %date-end% - %time-end::=:% Uhr "
28.
goto theend
29.
)
30.

31.
:check
32.
if %ERRORLEVEL% GTR 0 set /A fail=1
33.

34.
:theend
ungetestet

Gruß
Snow
Bitte warten ..
Mitglied: bastla
29.03.2010 um 16:41 Uhr
@Snowman25

Sollte nicht (ganz ohne Unterprogramm) ein
set "fail="
robocopy ... || set "fail=True"
...
if defined fail ( ...
oder alternativ nach jedem "robocopy" ein
if errorlevel 1 set "fail=True"
genügen?

Außerdem wäre es ratsam, die Variablen %time-end% und %date-end% vor dem "if" (= außerhalb der Klammer) zu erstellen (da ansonsten "delayedExpansion" erforderlich wäre) ...

Grüße
bastla
Bitte warten ..
Mitglied: Snowman25
29.03.2010 um 17:00 Uhr
Zitat von bastla:
nach jedem "robocopy" ein if errorlevel 1 set "fail=True" > genügen?
ungefähr so hatte ich es anfangs auch, aber i-wie hat mir das nicht gefallen...
Ich setzte fail auf 1 bzw. 0 um einfach konsistent zu bleiben. So kommt mir der Programmierstil doch wesentlich sauberer und selbsterklärender vor.
Außerdem wäre es ratsam, die Variablen %time-end% und %date-end% vor dem "if" (= außerhalb der
Klammer) zu erstellen (da ansonsten "delayedExpansion" erforderlich wäre) ...
Da spricht eigentlich nichts dagegen. Wie vorhin schon geschrieben ist das Script ja ungetestet.


Hier also nochmal die korrigierte Version:
01.
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
02.
:: Copy von Server DATEN nach Server BACKUP auf Windows Server 2008 - Backup per Mirroring
03.
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
04.

05.
rem Pfadvaribale für Blat Mailer setzen
06.
SET PATH=%PATH%;C:\Batches\Blat\
07.
set time-begin=%time:~0,8%
08.
set date-begin=%date%
09.
set /A fail=0
10.

11.
:: Dateien spiegeln mit zuwachs (kein löschen und nur hinzufügen)
12.

13.
robocopy.exe "w:" "d:\administration" /MIR /R:10 /ZB /DCOPY:T /TEE /LOG:"d:\robolog_mir_administration.log" /NP /V
14.
if %ERRORLEVEL% GTR 0 set /A fail=1
15.
robocopy.exe "\\server3\netlogon$" "D:\Netlogon Kopie" /MIR /R:10 /ZB /DCOPY:T /TEE /LOG:"D:\robolog_mir_netlogon.log" /NP /V
16.
if %ERRORLEVEL% GTR 0 set /A fail=1
17.
robocopy.exe "\\server3\deploy$" "D:\Deploy" /MIR /R:10 /ZB /DCOPY:T /TEE /LOG:"D:\robolog_mir_deploy.log" /NP /V
18.
if %ERRORLEVEL% GTR 0 set /A fail=1
19.
robocopy.exe "g:" "d:\framework" /MIR /R:10 /ZB /DCOPY:T /TEE /LOG:"d:\robolog_mir_framework.log" /NP /V
20.
if %ERRORLEVEL% GTR 0 set /A fail=1
21.

22.
set time-end=%time:~0,8%
23.
set date-end=%date%
24.

25.
rem Mail verschicken wenn fail=1
26.
if %fail%==1 (
27.
echo Backup Mirror Admin-Server2 FEHLER - vom %date-begin% - %time-begin::=:% Uhr bis %date-end% - %time-end::=:% Uhr | Blat.exe -priority 1 -to adminuser@domain.de -server smtp.domain.de -u adminuser@domain.de -pw K5EeiMB7 -debug -timestamp -log blatSMTPlog.txt -subject "Backup Mirror Admin-Server2 FEHLER - vom %date-begin% - %time-begin::=:% Uhr bis %date-end% - %time-end::=:% Uhr " -body "Es sind Fehler aufgetreten. Bitte folgende logfiles ueberpruefen: D:\robolog_mir_administration.log D:\robolog_mir_netlogon.log D:\robolog_mir_deploy.log D:\robolog_mir_framework.log"
28.
)
Bitte warten ..
Mitglied: bastla
29.03.2010 um 17:11 Uhr
@Snowman25
Ich setzte fail auf 1 bzw. 0 um einfach konsistent zu bleiben. So kommt mir der Programmierstil doch wesentlich sauberer und selbsterklärender vor.
"defined" (egal ob "True" oder 1 enthalten ist) oder "not defined" würde ich auch als konsistent betrachten ...

Der Hauptgrund, warum ich zuletzt vorrangig diese Variante verwende: Auf "defined" kann auch innerhalb einer Struktur (zB "for"-Schleife) geprüft werden, ohne "delayedExpansion" verwenden zu müssen.

Grüße
bastla
Bitte warten ..
Mitglied: photographix
06.04.2010 um 06:17 Uhr
Olá@all

War im verlängerten Oster-Weekend.
Feedback zur Batch kommt noch diese Woche.
Danke vorab fürs helfen.

Nice Week.

LG
Bitte warten ..
Mitglied: photographix
07.04.2010 um 13:41 Uhr
So nun mein Fazit:

Das Script funktioniert soweit ganz gut ABER die Version 026 von Robocopy (XP) hat ein Problem bei der Fehlerrückgabe.
Bsp: Laufwerk überhaupt nicht da -> Error 0 ??

Die Version 010 (2k) von Robocopy bring dort einen Fehler den ich abfangen kann.
Kann dafür aber nicht mit der Option /DCOPY:T arbeiten.

Die Version 027 (Vista/Win7) geht gar nicht unter XP...

Naja mal sehen was ich nun mache.

Trotzdem danke fürs rege Feedback.
Bitte warten ..
Mitglied: Snowman25
07.04.2010 um 13:54 Uhr
sind die Ordner-timestamps denn Überlebenswichtig? Höchstwahrscheinlich werden die sowieso von niemandem beachtet..
Bitte warten ..
Mitglied: photographix
07.04.2010 um 14:08 Uhr
Sagen wir so jain ^^

Man kann daran aber noch sehen wann einmal ein Ordner erstellt wurde und so finden wir ab und zu mal richtige Leichen.

Eventuell könnte man das mit Delage -> Datei löschen -> und dann später leere Ordner löschen lassen
Bitte warten ..
Ähnliche Inhalte
Weiterbildung
Ausbildung fertig, was nun ?
Frage von MeterpeterWeiterbildung16 Kommentare

Hallo *, Ich bin wahrscheinlich nächstes Jahr mit meiner 3 Jährigen Ausbildung als Fachinformatiker für SI fertig und mache ...

Windows 10

Cleanmgr unter Windows 10 wird nicht fertig

gelöst Frage von departure69Windows 109 Kommentare

Hallo. Ist es Euch auch schon passiert/aufgefallen, daß der Cleanmgr unter Windows 10 nie fertig wird? Irgendwo im 90%+-Bereich, ...

Windows 7

Windows "nicht fertig" installieren wie bei OEM-Rechnern

gelöst Frage von mosaik747Windows 74 Kommentare

Guten Tag zusammen, ich würde gerne Wissen ob es eine Möglichkeit gibt bzw. eher ob jemand damit schon mal ...

Windows Server

Windows 2008 R2 - Unsaubere De-Installation manuell fertig stellen

gelöst Frage von Looser27Windows Server2 Kommentare

Moin zusammen, ich habe ein Problem mit einem Programm unter Win 2008 R2, welches nicht sauber deinstalliert wurde. Nun ...

Neue Wissensbeiträge
Router & Routing
Der "768k-Day" kommt
Information von LordGurke vor 17 StundenRouter & Routing2 Kommentare

Für Leute, die Router mit BGP-Fulltable betreiben vielleicht ein interessanter Hinweis: Die IPv4-Fulltable erreicht voraussichtlich innerhalb der nächsten 2-3 ...

Debian

Partition angeblich voll, dabei aber noch nicht mal zur Hälfte belegt

Anleitung von diemilz vor 20 StundenDebian8 Kommentare

Hallo zusammen, ich habe ein kleines Problem: Ich habe auf einem physischen Debian Linux Server als ZoneMinder-Server (HP ProLiant ...

Windows 7
Updategängelung auf Windows 10, die zweite
Information von Penny.Cilin vor 5 TagenWindows 72 Kommentare

Hallo, da Windows 7 im kommenden Jahr nicht mehr supportet wird, werden Nutzer von Window 7 home premium wieder ...

Internet
EU-Urheberrechtsreform: Zusammenfassung
Information von Frank vor 7 TagenInternet1 Kommentar

Auf golem.de gibt es eine Analyse von Friedhelm Greis, der das Thema EU-Urheberrechtsreform gut und strukturiert zusammenfasst. Zwar haben ...

Heiß diskutierte Inhalte
Backup
Veeam Community Edition
gelöst Frage von dgrebnerBackup21 Kommentare

Hallo Zusammen, kann jemand seine praktischen Erfahrungswerte mit der Veeam-Community Edition mit mir teilen? Es gab dazu ja schon ...

Festplatten, SSD, Raid
Harddisk kaputt, was sagt mir ChrystalDiskInfo
gelöst Frage von InfoSeekerFestplatten, SSD, Raid18 Kommentare

Hallo zusammen, Mein Rechner lahmt. Ich stell mir die Frage woran es liegt und bin der Meinung es ist ...

LAN, WAN, Wireless
Notebooks in Firmenwlan authentifizieren
gelöst Frage von EarthShakerLAN, WAN, Wireless17 Kommentare

Guten Tag, unsere Firma möchte gerne flächendeckend WLAN einführen und hat zu diesem Zweck einen Dienstleister beauftragt. Wir benötigen ...

Netzwerkmanagement
Netzwerk vorübergehend weg
gelöst Frage von ahstaxNetzwerkmanagement13 Kommentare

Hallo, folgendes Szenario stellt sich dar: Im Netzwerk mit Win7-PCs wurden Switche ausgetauscht. Grundsätzlich funktioniert alles mindestens so gut ...