Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Datensicherung per Batch mit Statusmeldung

Frage Entwicklung Batch & Shell

Mitglied: derausgroenloh

derausgroenloh (Level 1) - Jetzt verbinden

14.01.2009, aktualisiert 11:49 Uhr, 6265 Aufrufe, 5 Kommentare

Hallo,
ich habe ein Problem bei der Erstellung einer Batchdatei.
Die Aufgabe ist folgende:
Ich muss mehrere Netzwerkfreigaben per Robocopy in ein "Arbeitsverzeichnis" kopieren, diese dort per 7-zip verpacken, nen Namen verpassen und dann einmal logs erstellen und zum anderen per bmail (oder vergleichbares) eine Statusmeldung verschicken, die für jeden einzelne Freigabe enthalten soll was gemacht wurde, ob es erfolgreich war und die Pfade sollen enthalten sein.

Soweit bin ich schonmal.

@echo off
rem dieses Script macht eine Datensicherung folgender Freigaben auf dem Linux-Server edv-styx \\edv-styx\EDV\Quartalsicherungen
rem Freigaben auf Indulor-W2K:
rem - Daten
rem - int_sales
rem - ScanFax_Ablage_OG
rem - EDV
rem - Controlling

rem folgende Variablen werden gesetzt
set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set sevenzpath=C:\Programme\7-Zip
set ordner=C:\Testordner\Arbeitsordner
set datumsvariable=%jahr%%monat%%tag%

:del
rem löscht alle Daten aus dem Arbeitsverzeichnis \\Ps-ica-07\Quartalssicherung_Arbeitsordner
del C:\Testordner\Arbeitsordner /f /s /q

:copy_Daten
rem kopiert alle daten aus der Freigabe "Daten" nach \\Ps-ica-07\Quartalssicherung_Arbeitsordner\Daten
robocopy C:\Testordner\indulor-w2k\Daten\ %ordner%\Daten\ /E /R:3 /W:2 /LOG+:%ordner%\%datumsvariable%_Daten.log

:copy_int_sales
rem kopiert alle daten aus der Freigabe "int_sales" nach \\Ps-ica-07\Quartalssicherung_Arbeitsordner\int_sales
robocopy C:\Testordner\indulor-w2k\int_sales\ %ordner%\int_sales\ /E /R:3 /W:2 /LOG+:%ordner%\%datumsvariable%_int_sales.log

:copy_ScanFax_Ablage_OG
rem kopiert alle daten aus der Freigabe "ScanFax_Ablage_OG" nach \\Ps-ica-07\Quartalssicherung_Arbeitsordner\ScanFax_Ablage_OG
robocopy C:\Testordner\indulor-w2k\ScanFax_Ablage_OG\ %ordner%\ScanFax_Ablage_OG\ /E /R:3 /W:2 /LOG+:%ordner%\%datumsvariable%_ScanFax_Ablage_OG.log

:copy_EDV
rem kopiert alle daten aus der Freigabe "EDV" nach \\Ps-ica-07\Quartalssicherung_Arbeitsordner\EDV
robocopy C:\Testordner\indulor-w2k\EDV\ %ordner%\EDV\ /E /R:3 /W:2 /LOG+:%ordner%\%datumsvariable%_EDV.log

:copy_Controlling
rem kopiert alle daten aus der Freigabe "Controlling" nach \\Ps-ica-07\Quartalssicherung_Arbeitsordner\Controlling
robocopy C:\Testordner\indulor-w2k\Controlling\ %ordner%\Controlling\ /E /R:3 /W:2 /LOG+:%ordner%\%datumsvariable%_Controlling.log

:zip
rem komprimiert die Unterordner des Verzeichnises \\Ps-ica-07\Quartalssicherung_Arbeitsordner
for /f "tokens=*" %%i in ('dir "%ordner%" /a:d-r-h-s /b') do "%sevenzpath%\7z" a -t7z "%ordner%\%datumsvariable%_%%i.zip" "%ordner%\%%i\"

funktioniert bis dahin auch wunderbar
mein Problem ist jetzt einmal eine Log-Datei für den :zip Teil zu schreiben und des weiteren automatisch eine Mail zu versenden, in der die erstellten log-Datein angehängt werden und die als Text pro Freigabe wiedergibt, ob die Arbeitsschritte geklappt haben und am besten noch die Namen und Pfade enthält.

Kann mir jemand weiterhelfen?

Danke im Voraus.

Gruß

derausgroenloh
Mitglied: 60730
14.01.2009 um 12:06 Uhr
Servus,

schau dir mal Formatierungshilfe an.

Zu deiner Problemstellung ansich:

Die Ausgabe von 7Z lässt sich auch in eine Datei schreiben

01.
%sevenzpath%\7z" a -t7z "%ordner%\%datumsvariable%_%%i.zip" "%ordner%\%%i\" > ordner\datei.txt 
02.
find "Everything is Ok" ordner\datei.txt && goto mail 
03.
 
04.
:mail 
05.
Rem zum Mailen per Blat.exe oder Bmail oder Postie bitte einen der Programmnamen "suchen" - Anleitungen und die Programme ansich sind ausreichend beschreiben.
Gruß
Bitte warten ..
Mitglied: derausgroenloh
14.01.2009 um 13:42 Uhr
Danke,
das Zipen klappt.
Für die Mailgeschichte gucke ich mir mal die Tipps von dir in ruhe an.
Bitte warten ..
Mitglied: 60730
14.01.2009 um 13:52 Uhr
Gern geschehen:

wenn du es "verfeinern" willst - das ist ja nur ein Ansatz gewesen..

Nehme ich mal dein letztes sub
01.
:zip 
02.
rem komprimiert die Unterordner des Verzeichnises \\Ps-ica-07\Quartalssicherung_Arbeitsordner 
03.
for /f "tokens=*" %%i in ('dir "%ordner%" /a:d-r-h-s /b') do "%sevenzpath%\7z" a -t7z "%ordner%\%datumsvariable%_%%i.zip" "%ordner%\%%i\"
01.
:zip 
02.
echo Ps-ica-07\Quartalssicherung_Arbeitsordner> ordner\datei.txtfor /f "tokens=*" %%i in ('dir "%ordner%" /a:d-r-h-s /b') do "%sevenzpath%\7z" a -t7z "%ordner%\%datumsvariable%_%%i.zip" "%ordner%\%%i\" >> ordner\datei.txt 
03.
find "Everything is Ok" ordner\datei.txt && goto mail 
04.
 
05.
:mail 
06.
 
So steht dann auch im Log, welcher Job gelaufen ist.

Von daher wäre eine logische Schlußfolgerung anstatt einem harten Dateinamen auch die Variable %ordner% für das Log zu nehmen.
Bitte warten ..
Mitglied: derausgroenloh
14.01.2009 um 14:53 Uhr
Ich komme mit dem ersten Ansatz schon gut zurecht.
Aber wo finde ich denn mal die blat.exe?
Bitte warten ..
Mitglied: 60730
14.01.2009 um 15:07 Uhr
Zitat von derausgroenloh:
Aber wo finde ich denn mal die blat.exe?

Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Batch & Shell
Dateinamen nach Zeichnen abschneiden - Batch-Shell (9)

Frage von cberndt zum Thema Batch & Shell ...

Batch & Shell
CMD Verschlüsslung ( Batch ) (11)

Frage von clragon zum Thema Batch & Shell ...

Batch & Shell
gelöst älteste dateien via batch löschen (6)

Frage von cali169 zum Thema Batch & Shell ...

Batch & Shell
gelöst Suchen und Ersetzen mehrerer Suchbegriffe per Batch (4)

Frage von makroll10 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Microsoft Office
Keine Updates für Office 2016 (13)

Frage von Motte990 zum Thema Microsoft Office ...

Grafikkarten & Monitore
Tonprobleme bei Fernseher mit angeschlossenem Laptop über HDMI (11)

Frage von Y3shix zum Thema Grafikkarten & Monitore ...