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

PROBLEM - Auswertung von Log-Dateien

Frage Entwicklung Batch & Shell

Mitglied: 72036

72036 (Level 1)

18.11.2008, aktualisiert 21:25 Uhr, 4147 Aufrufe, 6 Kommentare

Hallo,
ich habe eine Batch-Datei programmiert, mit der ich eine Datei von meinem Rechner in ein Verzeichnis auf einen Server kopieren kann.
Zudem habe ich mit dem Befehl: >> c:\log\logdatei.txt
eine Log-Datei schreiben lassen, die mir anzeigt ob die Übertragung geklappt hat oder nicht.
Soweit funktioniert das auch alles.

Nun habe ich aber ein Problem.
Die zu kopierende Datei soll nicht nur auf einen Server, sondern auf mehrere verschiedene kopiert werden.

Jetzt brauche ich hierzu auch eine Log-Datei, die mir nicht nur anzeigt, ob das geklappt hat oder nicht.
Sie müsste mir auch anzeigen können, auf welchen Servern ein Problem bei der Übertragung aufgetreten ist, damit man dort den Vorgang nochmal wiederholen kann.

Kann mir hierbei jemand helfen??

Alina
Mitglied: Tsocin
18.11.2008 um 13:57 Uhr
Da du mit Batch arbeitest:

echo Kopiere Datei nach server12345 >> c:\log\logdatei.txt

Das ganze mit dem entsprechenden Servernamen vor den copy-Befehl setzen und schon taucht im Logfile immer die obige Zeile auf, darunter das Ergebnis des Kopiervorgangs (wie bisher).


Grüße
Bitte warten ..
Mitglied: 72036
18.11.2008 um 14:05 Uhr
Ich habe das jetzt soweit ausprobiert.
Es hat auch geklappt, dass die obige Zeile immer im Logfile auftaucht und darunter das Ergebnis des Kopiervorgangs.
Das Problem ist jetzt nur, dass wenn es nicht funktioniert, immer noch dieselbe Zeile dort auftaucht und nicht mehr, dass es einen Fehler gab.

Grüße
Bitte warten ..
Mitglied: 72036
18.11.2008 um 14:19 Uhr
So ich habe mir jetzt nochmal genauer Gedanke über deinen Hinweis gemacht, Tsocin und jetzt klappt alles.
Ich habe den Befehl jetzt so aufgeteilt, dass es "zwei verschiedene Wege" gibt:

Zunächst gebe ich ein, was ich kopieren möchte und wohin:
copy "zu kopierende Datei" "Zielverzeichnis"

Anschließend gebe ich "zwei mögliche Wege" vor:
if errorlevel 1 goto no (Übertragung hat nicht geklappt)
if errorlevel 0 goto yes (Übertragung hat geklappt)

:no (falls Übertragung nicht geklappt hat, folgt er diesem Weg)
echo Fehler bei Kopieren der Datei nach "Servername">> c:\log\logdatei.txt (diese Nachricht erscheint)
rem echo no
rem
cls
echo *
echo * *
echo Daten nicht uebertragen!!!
echo * *
echo
*
pause
goto ende


:yes (falls Übertragung geklappt hat, folgt er diesem Weg)
echo Kopiere Datei nach "Servername">> c:\log\logdatei.txt (diese Nachricht erscheint)

cls
echo *
echo * *
echo * Alle Daten wurden uebertragen *
echo * *
echo *

rem echo off

goto ende


Vielen Dank nochmal für deinen Hinweis
Hat mir echt sehr geholfen.

Grüße Alina
Bitte warten ..
Mitglied: miniversum
18.11.2008 um 20:10 Uhr
Nur als kleiner Verbesserungsvorschlag.
Wenn du nur nach errorlevel 0 (also erfolgreiche Kopie) prüfst udn alles andere als Fehlerhaft ansiehst klapt es auch wen du z.B. mal einen anderen Errorlevel größer 1 hast.

copy "zu kopierende Datei" "Zielverzeichnis"
if errorlevel 0 goto yes else goto no

:no
...
:yes
...
Bitte warten ..
Mitglied: Biber
18.11.2008 um 21:25 Uhr
Hmmmjein, miniversum,

Die Aussage ist richtig, aber der Beweis/das Beispiel genau verkehrt herum.
if errorlevel 0 goto yes else goto no
Nochmal zum Nachturnen am CMD-Prompt.
Der Befehl "md" ohne Parameter erzeugt einen Fehler/ein ERROLEVEL größer 0.
Dann dürfte das hier:
[das ">" am Zeilenbeginn ist der Prompt, NICHT mit eintippen]
01.
>md 2>nul & if errorlevel 0 (echo errlevel 0) else echo errlevel-other 
02.
errlevel 0
...nicht passieren.....
Richtig(er) herum wäre es so:
01.
>md 2>nul & if not errorlevel 1 (echo errlevel 0) else echo errlevel-other 
02.
errlevel-other
-->denn "if not ErrorLevel 1" heißt ja auf deutsch "wenn ErrorLevel nicht 1 oder größer ist"
[schlaubergerModus an]
Etwas anderes wäre die Prüfung auf textuelle Gleichheit
01.
IF "%errorlevel%"=="0" goto :allesPrima
.... aber das knicken wir mal wieder ganz schnell...
[/schlaubergerModus aus]

Die lesbarste und stilistisch beste ist ohnehin der bastla-Standard
01.
 (irgendeinbefehl) || goto :Fehler 
02.
-bzw- 
03.
(irgendeinbefehl) && goto :keinFehler_oderZumindestKeinErrorlevelGesetzt
Grüße
Biber
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Microsoft
gelöst Log Dateien von verschieden Orten sammeln (6)

Frage von Collider zum Thema Microsoft ...

Drucker und Scanner
Problem mit Ausdruck von PDF Dateien (4)

Frage von CountryBoy zum Thema Drucker und Scanner ...

Batch & Shell
gelöst Problem mit "username" abfrage in Batch Dateien (5)

Frage von KriAIT zum Thema Batch & Shell ...

Batch & Shell
gelöst Dateien mit vorgegebener Größe erstellbar? (3)

Frage von Stefan007 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

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