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

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, 4914 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 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 ...

RedHat, CentOS, Fedora
gelöst Ausgabe mit IF auswerten (8)

Frage von OIOOIOOIOIIOOOIIOIIOIOOO zum Thema RedHat, CentOS, Fedora ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows 7
Bluesreens unternehmensweit (18)

Frage von SYS64738 zum Thema Windows 7 ...

LAN, WAN, Wireless
IP Adressen - Modem - Switch - Accesspoint (17)

Frage von teuferl82 zum Thema LAN, WAN, Wireless ...

Festplatten, SSD, Raid
gelöst Raid-Controller (Areca) Datenverlust trotz R5 (16)

Frage von sebastian2608 zum Thema Festplatten, SSD, Raid ...

Windows Netzwerk
DNS ins mehreren Subnetzen (13)

Frage von joerg zum Thema Windows Netzwerk ...