Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

Batch nur Clients aus einer Logdatei auswerten bei denen Fehler beim kopieren aufgetreten sind

Frage Entwicklung Batch & Shell

Mitglied: Maddog1982

Maddog1982 (Level 1) - Jetzt verbinden

22.04.2008, aktualisiert 23.04.2008, 4930 Aufrufe, 6 Kommentare

Ich habe folgendes anliegen,

ich kopiere per Xcopy Befefehl in einer Batch Datei verschiedene Daten zu den Windows Clients im Netzwerk.

in der Datei clients.txt stehen alle Clients unseres Netzwerkes
@echo on
for /f %%i in (clients.txt) do xcopy \\%computername%\Programm\test \\%%i\Programm\test



Zusätzlich log ich den kompl. Befehl mit, Log sieht wie folgt aus

D:\test>xcopy \\SRV-TEST-DO\Program\test \\CLIENT1\Programm\test
Ungltige Laufwerkangabe
0 Datei(en) kopiert

D:\test>xcopy \\SRV-TEST-DO\Program\test \\CLIENT2\Programm\test
186 Datei(en) kopiert



Jetzt kommt mein Problem, da das Log bei 50 Clients ziemlich unübersichtlich wird möchte ich ein zusätzliches Log in der eine Zusammenfassung steht nur von den Clients wo ein Fehler beim kopieren aufgetreten ist.

Wie bekomme ich das hin?
Mitglied: bastla
22.04.2008 um 20:49 Uhr
Hallo Maddog1982!

Du könntest einfach den Errorlevel des "xcopy"-Befehles nutzen und eine entsprechende Meldung in eine Fehler-Log-Datei schreiben:
01.
for /f %%i in (clients.txt) do xcopy \\%computername%\Programm\test \\%%i\Programm\test||(echo Fehler bei %%i)>>D:\LogFehler.txt
Grüße
bastla
Bitte warten ..
Mitglied: Maddog1982
22.04.2008 um 21:13 Uhr
Danke, hat auf anhieb funktioniert
Wie hast du das mit dem Errorlevel gemacht, liegt das an den Zeichen || oder wo dran?

Kannst du mir das erklären?
Bitte warten ..
Mitglied: bastla
22.04.2008 um 21:31 Uhr
Hallo Maddog1982!

http://technet2.microsoft.com/WindowsServer/de/library/44500063-fdaf-4e ... (unter "Verwenden mehrerer Befehle und Symbole zur bedingten Verarbeitung")

Grüße
bastla
Bitte warten ..
Mitglied: Maddog1982
22.04.2008 um 21:53 Uhr
jetzt benötige ich nur noch die Auskunft wie ich den aktuellen Errorlevel bekomme.
Wenn ich folgendes mache

for /f %%i in (clients.txt) do xcopy \\%computername%\Programm\test \\%%i\Programm\test||(echo Fehler bei %%i wegen %errorlevel%)>>D:\LogFehler.txt

bekomme ich immer Errorlevel 0 angezeigt, wieso?
Bitte warten ..
Mitglied: Biber
22.04.2008 um 22:48 Uhr
Moin Maddog1982,

bekomme ich immer Errorlevel 0 angezeigt, wieso?
Weil alle Variablen, die (aus Sicht der CMD.exe) in einer Zeile/einer einzigen Anweisung stehen sozusagen "beim Lesen" einmalig aufgelöst werden.

Deshalb hat %errorlevel% immer den Wert, den es auch "beim Lesen" der ersten Befehlsworte dieser Zeile hat.
Also bevor irgendeine Schleife überhaupt losläuft.

Abhilfe. Variable "verzögert", erst beim Ausführen auflösen - neudeutsch "DelayedExpansion".

01.
Setlocal EnableDelayedExpansion 
02.
for /f %%i in (clients.txt) do xcopy \\%computername%\Programm\test \\%%i\Programm\test||(echo Fehler bei %%i wegen !errorlevel!)>>D:\LogFehler.txt
Die "verzögert" aufzulösende Variable wird in Ausrufezeichen gesetzt (!errorlevel!) statt wie sonst in Prozentzeichen (%errorlevel%).

Grüße
Biber
Bitte warten ..
Mitglied: Maddog1982
23.04.2008 um 22:14 Uhr
Vielen Dank ihr habt mir super geholfen, Task kann als erledigt gekennzeichnet werden
Bitte warten ..
Ähnliche Inhalte
KVM
KVM Starter Logdatei erstellen

Frage von OIOOIOOIOIIOOOIIOIIOIOOO zum Thema KVM ...

Windows 10
gelöst Windows 10 - Beim Ausdruck ist ein Fehler aufgetreten (4)

Frage von mario87 zum Thema Windows 10 ...

Windows 7
Kopiervorgang Logdatei (1)

Frage von Riddler123 zum Thema Windows 7 ...

Batch & Shell
gelöst Batch: alle Ordner mit einem bestimmten Namen kopieren (4)

Frage von Remsboys zum Thema Batch & Shell ...

Neue Wissensbeiträge
Multimedia

Raspberry Pi als Digital-Signage-Computer

(1)

Information von BassFishFox zum Thema Multimedia ...

Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(16)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
Freigabe aus anderem Netz nicht erreichbar (33)

Frage von McLion zum Thema Router & Routing ...

Visual Studio
Vb.net-Tool zum Erzeugen einer Outlook-E-Mail (24)

Frage von ahstax zum Thema Visual Studio ...

Batch & Shell
Batch Programm verhalten bei shoutdown -p (19)

Frage von Michael-ITler zum Thema Batch & Shell ...

Windows Netzwerk
Netzwerk Neustrukturierung (15)

Frage von IT-Dreamer zum Thema Windows Netzwerk ...