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

Globales Statuslogfile von mehreren Skripten bearbeiten

Frage Entwicklung Batch & Shell

Mitglied: stuijg

stuijg (Level 1) - Jetzt verbinden

11.03.2011 um 14:38 Uhr, 2838 Aufrufe, 4 Kommentare

Robocopyjobs und deren Status in einer Datei immer abrufbar

Hallo,

folgende Situation. Ein Server verteilt per Batchskript/geplante Tasks Nachts auf viele andere Server.

Alle geplanten Tasks rufen ein Batchfile auf was mit 2 Parametern gesteuert wird.
Die Parameter sind einmal die IP Adressen und einmal die Namen der Server.

Der Aufruf ist als: C:\batch\sync.bat 10.0.0.5 Server_A >> C:\batch\sync\Server_A\Status.log

In diesem Skript sind mehrere Robocopyjobs (Synchronisationen, Kopiervorgänge und Abholvorgänge)
die hintereinander laufen.
Diese schreiben jeweils ein Log-File.
Sobald alle robocopy-jobs fertig sind lasse ich mir eine Zusammenfassung per blat.exe schicken.

Jetzt will ich das erweitern.
Komme ich jetzt morgens in Büro und will wissen ob noch was läuft muss ich folgendes machen:

RDP auf Server, Schauen welcher geplante Task läuft, In den Ordner gehen C:\batch\Server_A\Status.log, schauen welcher Robocopyjob läuft,
die Logdatei C:\batch\Server_A\copy_Projekte.log öffnen und schauen wo er hängt.

Das dauert mir zu lange und ist sehr umständlich.

Es soll möglich sein auf einen Blick zu sehen wo welcher geplante Task gerade ist.
Also mein Ziel:

Eine Datei (Status.txt) soll vorhanden sein. In der Sollte stehen:

Status Synchronisationen

Server_A aktuell:
Server_B aktuell:
Server_C aktuell:

Und hinter den Doppelpunkten soll vom jeweiligen geplanten Task stehen wo er gerade ist.
Ich hab mir das so vorgestellt, dass ich vor jedem robocopy Aufruf in der Batchdatei einfach ein Text erstellen lasse wie zum Beispiel:

echo "Ordner D:\Projekte wirdseit %datum% syncronisiert, Logfile C:\batch\Server_A\copy_Projekte.log" >> Und dieser Text soll dann nach "Server_A aktuell:" stehen

Sobald der Job vorbei ist soll anstelle "Ordner D:\Projekte wird seit %datum% syncronisiert, Logfile C:\batch\Server_A\copy_Projekte.log" dann
"Ordner D:\Aufgaben wird seit %datum% syncronisiert, Logfile C:\batch\Server_A\copy_Aufgaben.log" stehen

Zur Info:

Die Variable %datum% sieht bei mir so aus: %date:~-4,4%-%date:~-7,2%-%date:~0,2%-%time:~0,-9%%time:~3,-6%

Ich muss also in die Datei Status.txt zur stelle "Server_A aktuell:" und dann was anhängen. Das Problem wird wohl das überschreiben der Zeile sein.
Ist so was möglich? Also vielleicht den Rest der Zeile leeren wenn ein neuer Job anfängt und dann die neue Information schreiben?


Vielleicht ist das mal ne kniffligere Frage. Ich schaffs grad net.

Gruß Stuijg
Mitglied: mathe172
11.03.2011 um 15:37 Uhr
Hallo stuijg!

Versuch mal etwas in die richtung:
01.
set "Server=A" 
02.
set "Text=Text der hingeschrieben werden soll" 
03.
set "Status=C:\Status.txt" 
04.
REM ------------------ 
05.
(for /f "usebackq delims=:" %%A in ("%Status%") do (if "%%A"=="Server_%Server% aktuell" (echo.%%A: %Text%) else (echo.%%A)))>"%Status%"
Mathe172
Bitte warten ..
Mitglied: stuijg
15.03.2011 um 09:23 Uhr
Hallo Mathe172,

hmm leider nicht so wirklich.
Weil so wie das aussieht schreibt er bei "else" doch jedesmal die Datei neu. Damit wären doch die alten Informationen weg.
Auch schreibt er die Zeile unterhalb aller Zeilen neu und fügt neue Informationen vom gleichen Parameter immer neu hinzu.
Ich hätte gern, dass er das vorhandene löscht und/oder überschreibt.

Ich glaube ich muss mit Zeilennummern oder Zeilen arbeiten. Also im Pseudocode:
Wenn der %%A gleich ist mit einem Text ist, dann spring eine Zeile runter und
lösche die Zeile und schreibe %Text%

Gruß stuijg
Bitte warten ..
Mitglied: mathe172
15.03.2011 um 12:13 Uhr
Hallo stujig!

Theoretisch müsste es funktionieren, da die gesamte Ausgabe der Schleife auf einmal umgeleitet wird (siehe hier)

Mach es zur Sicherheit aber so wie hier (zweites Beispiel). Das sollte sich für deine Zwecke abändern lassen.

Mathe172
Bitte warten ..
Mitglied: stuijg
17.03.2011 um 12:56 Uhr
Danke,

das hilft mir. Une irgendiwe werde ich das Gefühl nicht los, dass alle Fragen die ich habe hier in diesem Forum schonmal gefragt wurde und
schon beantwortet wurden. Und zwar richtig richtig gut.

Gruß stuijg
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Windows Server
Große Dateien mit externen Partnern bearbeiten (4)

Frage von Matsushita zum Thema Windows Server ...

Grafik
Notebook zum Fotos bearbeiten (10)

Frage von KodaCH zum Thema Grafik ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...