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 Errorlevel 0

Frage Entwicklung Batch & Shell

Mitglied: leb0rtran

leb0rtran (Level 1) - Jetzt verbinden

29.06.2007, aktualisiert 21:44 Uhr, 33939 Aufrufe, 2 Kommentare

Hallo,

ich habe folgendes Problem, und zwar wenn ich if errorlevel 0 <befehl> eingebe, bearbeitet die Batch den Befehl dahinter immer, auch wenn der errorlevel zB 1 ist.

Hier der Code
01.
set d=C:\Documents and Settings\Administrator\Desktop\test\bbbb 
02.
 
03.
ping -n 1 bbbbbb 
04.
 
05.
echo %errorlevel% 
06.
 
07.
: "%ProgramFiles%\WinRAR\rar.exe" a -dh -ilog"%c%.log" -m5 -os -ri7 -rr5p -z"%d%\com%CDATE%.%CTIME%.txt" "%CDATE%_%CTIME%" "%CDATE%_%CTIME%" 
08.
 
09.
:Fehlermeldung 
10.
if errorlevel 0 goto noerror 
11.
if errorlevel 1 set error=WARNING - Es traten Fehler auf, jedoch nicht schwerwiegend (ERRORLEVEL 1) 
12.
if errorlevel 2 set error=FATAL ERROR - Es trat ein schwerer, nicht behebbarer Fehler auf (ERRORLEVEL 2) 
13.
if errorlevel 3 set error=CRC ERROR - Ein Prüfsummenfehler trat beim Entpacken auf (ERRORLEVEL 3) 
14.
if errorlevel 4 set error=LOCKED ARCHIVE - Sie versuchten, ein Archiv zu öffnen, dass mit Befehl "k" gesperrt wurde (ERRORLEVEL 4) 
15.
if errorlevel 5 set error=WRITE ERROR - Die Datei konnte nicht gespeichert werden (ERRORLEVEL 5) 
16.
if errorlevel 6 set error=OPEN ERROR - Die Datei konnte nicht geöffnet werden (ERRORLEVEL 6) 
17.
if errorlevel 7 set error=USER ERROR - Fehler in den Kommandozeilenoptionen (ERRORLEVEL 7) 
18.
if errorlevel 8 set error=MEMORY ERROR - Nicht genug Speicher für diese Operation (ERRORLEVEL 8) 
19.
if errorlevel 9 set error=CREATE ERROR - Fehler beim Erstellen einer Datei (ERRORLEVEL 9) 
20.
if errorlevel 255 set error=USER BREAK - Strg-Untbr wurde vom Benutzer gedrückt (ERRORLEVEL 255) 
21.
 
22.
echo %error% 
23.
 
24.
:net send pc1 "%error%BACKUP %g% @ %COMPUTERNAME% %CDATE% : %CTIME%" 
25.
echo %CDATE%_%CTIME% : Compressing failed>> "%d%.log" 
26.
echo                 : %error%>> "%d%.log" 
27.
goto end 
28.
 
29.
:noerror 
30.
echo noerror 
31.
 
32.
:end 
33.
 
34.
pause
Also er springt immer auf noerror.
Ich hab den ping Befehl mal reingetan um n errorlevel von ein zu reproduzieren, mit set errorlevel=1 passiert das selbe.

Kann mir jemand helfen? Bin am verzweifeln!

leb0rtran
Mitglied: bastla
29.06.2007 um 21:23 Uhr
Hallo leb0rtran!

Aus der Hilfe zu "if":
ERRORLEVEL Nummer
Bedingung ist erfüllt, wenn das zuletzt ausgeführte Programm einen Code größer oder gleich der Nummer zurückgibt.


Daraus folgt, dass eine Abfrage der Art "if errorlevel 0" de facto sinnlos ist (da alle Errorlevel >= 0 sein sollten). "Klassisch" ist die Lösung mit absteigender Reihenfolge - der entsprechende Teil könnte dann so aussehen:
01.
set error= 
02.
if errorlevel 255 set error=USER BREAK - Strg-Untbr wurde vom Benutzer gedrückt (ERRORLEVEL 255) & goto :Fehler 
03.
if errorlevel 9 set error=CREATE ERROR - Fehler beim Erstellen einer Datei (ERRORLEVEL 9) & goto :Fehler 
04.
... 
05.
if errorlevel 1 set error=WARNING - Es traten Fehler auf, jedoch nicht schwerwiegend (ERRORLEVEL 1) & goto :Fehler 
06.
echo noerror 
07.
pause 
08.
goto :eof 
09.
:Fehler 
10.
echo %error% 
11.
...
Alternativ dazu könntest Du auch die Variable %errorlevel% abfragen. Dann würde auch
01.
if %errorlevel%==0 goto noerror
funktionieren.

Zum Testen des Errorlevels kannst Du übrigens folgendes VB-Script verwenden (speichern unter "Error.vbs"):
01.
If WScript.Arguments.Count > 0 Then If IsNumeric(WScript.Arguments(0)) Then WScript.Quit(Abs(WScript.Arguments(0)))
Bei einem Aufruf mit Angabe einer Zahl wird der entsprechende Errorlevel gesetzt, also etwa
01.
cscript //nologo Error.vbs 5
Wird kein oder ein nicht-numerisches Argument übergeben, wird ein Errorlevel 0 erzeugt.

Grüße
bastla

[Edit] (Obwohl für diesen Einsatzzweck eigentlich egal) Script gegen nicht-numerische Argumente abgesichert. [/Edit]
Bitte warten ..
Mitglied: leb0rtran
29.06.2007 um 21:44 Uhr
ahhh, deshalb
Vielen Dank für die Hilfe
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Win10 ändert den Errorlevel? ( Batch ) (12)

Frage von clragon zum Thema Batch & Shell ...

Batch & Shell
gelöst Abfrage ERRORLEVEL springt aus der FOR Schleife (8)

Frage von Galindiesel zum Thema Batch & Shell ...

Administrator.de Feedback
gelöst RSS-Feed zeigt keine " 0 " an? (6)

Frage von Snowman25 zum Thema Administrator.de Feedback ...

Neue Wissensbeiträge
Sicherheit

Millionen Euro in den Sand gesetzt?

(1)

Information von transocean zum Thema Sicherheit ...

Sicherheit

How I hacked hundreds of companies through their helpdesk

Information von SeaStorm zum Thema Sicherheit ...

Erkennung und -Abwehr

Ccleaner-Angriff war nur auf große Unternehmen gemünzt

(10)

Information von Lochkartenstanzer zum Thema Erkennung und -Abwehr ...

Heiß diskutierte Inhalte
Humor (lol)
gelöst Freidach Beitrag (40)

Frage von Penny.Cilin zum Thema Humor (lol) ...

Windows 7
gelöst SSD - Win7 Lags (20)

Frage von ph5555 zum Thema Windows 7 ...

Firewall
gelöst Firewall Firmeneimsatz (19)

Frage von wiesi200 zum Thema Firewall ...