Top-Themen

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

If ERRORLEVEL Registry Abfrage

Frage Entwicklung Batch & Shell

Mitglied: Pinkywesen

Pinkywesen (Level 1) - Jetzt verbinden

13.05.2010 um 13:25 Uhr, 5033 Aufrufe, 5 Kommentare

Ich habe ein Problem mit einer "if ERRORLEVEL" Abfrage

Guten Tag liebe Administrator.de Mitglieder,
Ich hab folgendes Batch-Problem. Und zwar will ich mehre Registrierungs Werte abfragen und in einer Text Datei speichern. Aber wenn diese nicht existieren soll das nicht vermerkt werden einfach zum nächsten springen. Hier meine Batch Datei:

01.
if ERRORLEVEL 1 goto next1 
02.
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "ProductInformation" >> product.txt  
03.
:next1 
04.
...
So da dieser Registrierungs Wert immer hoffe ich immer existiert ist das ja kein Problem. Aber wenn ein anderer Registry-Wert mal nicht existiert funktioniert mein Script nicht. Die product.txt sieht dann immer folgendermaßen aus:

01.
! REG.EXE VERSION 3.0 
02.
 
03.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
Wie kann ich dies verhindern ?

Danke im Vorraus für alle Poster !
Mitglied: LotPings
13.05.2010 um 14:39 Uhr
Moin,

du kannst einen errorlevel nicht im Voraus abfragen, das ist nicht vbscript.
setz den Reg Query nochmal mit Redirection auf Nul davor.

Gruß
LotPings

@bastla, ja stand schon von Anfang an da
Bitte warten ..
Mitglied: bastla
13.05.2010 um 15:07 Uhr
Hallo Pinkywesen!

Wie LotPings schon angemerkt hat, ist die Abfrage vorweg eigentlich nicht möglich - Du könntest es aber so (mäßig elegant) versuchen:
01.
set q="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "ProductInformation" 
02.
reg query %q%>nul 2>&1 && reg query %q%>>product.txt
Im Zweifelsfall würde ich aber eher eine "for /f"-Schleife herumbauen und dann auch nur die interessierende(n) Zeile(n) ausgeben ...

Grüße
bastla

[Edit] @LotPings: Stand Deine zweite Zeile auch vorher schon da? Wenn ja, hat mich der Winterschlaf wohl doch nochmal eingeholt ... [/Edit]
Bitte warten ..
Mitglied: Pinkywesen
14.05.2010 um 01:28 Uhr
Zitat von bastla:
Hallo Pinkywesen!

Wie LotPings schon angemerkt hat, ist die Abfrage vorweg eigentlich nicht möglich - Du könntest es
aber so (mäßig elegant) versuchen:
01.
set q="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "ProductInformation" 
02.
> reg query %q%>nul 2>&1 && reg query %q%>>product.txt 
03.
> 
Im Zweifelsfall würde ich aber eher eine "for /f"-Schleife herumbauen und dann auch nur die interessierende(n)
Zeile(n) ausgeben ...

Grüße
bastla

[Edit] @LotPings: Stand Deine zweite Zeile auch vorher schon da? Wenn ja, hat mich der Winterschlaf wohl doch nochmal eingeholt
... [/Edit]


Danke erstmal für deine Antwort,
aber dein Script funktioniert bei mir gar nicht. Es gibt nichts aus. Kannst du das mit der "for" Schleife bitter näher erläutern ?
Bitte warten ..
Mitglied: bastla
14.05.2010 um 11:53 Uhr
Hallo Pinkywesen!
... dein Script funktioniert bei mir gar nicht. Es gibt nichts aus.
Eigentlich hätte ich angenommen, dass genau das erwünscht wäre: Wenn der nicht-existente Wert von "ProductInformation" ausgelesen werden soll, wird der Datei "product.txt" nichts hinzugefügt; wenn Du "ProductInformation" durch zB "CSDVersion" ersetzt, sollte auch ein Eintrag in der Datei erzeugt werden.
Mit einer "for"-Schleife (einzugeben direkt in die Kommandozeile, bzw in einem Batch mit %%i und %%j zu schreiben) sähe das dann so aus:
for /f "skip=4 tokens=2*" %i in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "CSDVersion" 2^>nul') do @echo %j
erzeugt bei mir (XP SP3) die folgende Ausgabe:
Service Pack 3
Wenn anstelle von "CSDVersion" der (nicht vorhandene) Wert von "CDVersion" abgefragt würde, wäre das Ergebnis einfach gar keine Ausgabe (also auch ohne Fehlermeldung); genauso, wie wenn etwa anstelle von "CurrentVersion" nur "CurrVersion" verwendet würde ...

Grüße
bastla
Bitte warten ..
Mitglied: LotPings
14.05.2010 um 12:00 Uhr
Moin,
Bastla war schneller, ich poste meine ähnliche Antwort trotzdem.

Zitat von Pinkywesen:
aber dein Script funktioniert bei mir gar nicht. Es gibt nichts aus.
Das stimmt nicht, es funkltioniert.
Und das es bei nicht vorhandenem Value ProductInformation NICHTS ausgibt, war doch genau deine Frage!
Bei meinen WinXP Pro und Win7Ultimate64Bit kommt da auch nichts.

Kannst du das mit der "for" Schleife bitter näher erläutern ?
Ich kann das auch süß oder herzhaft erklären,
aber wenn die Abfrage ein leeres Ergebnis erzeugt hilft auch die for schleife nicht.

Du kannst Produkt Informationen über den Value
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"
erhalten , hier wäre eine for Schleife angebracht um mit findstr nach DisplaName und DisplayVersiom zu filtern.

oder auch mit WMIC über mit Windows Installer installierte Software
wmic product get Name, Version
erhalten.

Gruß
LotPings
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Abfrage ERRORLEVEL springt aus der FOR Schleife
gelöst Frage von GalindieselBatch & Shell8 Kommentare

Liebe Gemeinde, ich habe eine kleine batch geschrieben, die aus einer liste (IPs) heraus Laufwerke mappen soll, darauf dann ...

Windows Server
SCCM2012 Abfrage eines Registry Wertes
gelöst Frage von busteronWindows Server5 Kommentare

Hallo an die Gemeinschaft, ich hänge momentan an ein Problem wo ich gerade nicht weiter weiß. Weiß jemand ob ...

Windows Server
WMI VBS Registry Abfrage
gelöst Frage von LuciusCastusWindows Server3 Kommentare

Ich habe folgendes Problem: Für die GPO Verteilung benötige ich eine WMI Filterung von der Installation .Net v4. Ab ...

Batch & Shell
Seltsames Verhalten bei Errorlevel abfrage in FOR DO Schleife
gelöst Frage von Kalma73Batch & Shell1 Kommentar

Hallo, ich bin gerade dabei ein Stromausfall Shutdown Script zu schreiben. Habe schon einiges Ausprobiert und mir ist etwas ...

Neue Wissensbeiträge
Verschlüsselung & Zertifikate

Die Hölle friert ein weiteres Stück zu: Microsoft integriert OpenSSH in Windows

Information von ticuta1 vor 18 MinutenVerschlüsselung & Zertifikate

Interessant SSH-Kommando in CMD.exe und PowerShell

Apple

IOS 11.2.1 stopft HomeKit-Remote-Lücke

Tipp von BassFishFox vor 1 TagApple

Das Update für iPhone, iPad und Apple TV soll die Fernsteuerung von Smart-Home-Geräten wieder in vollem Umfang ermöglichen. Apple ...

Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 1 TagWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 EN-US frisch installiert und dabei die englische ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 1 TagWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Heiß diskutierte Inhalte
Windows Server
RODC kann nicht aus Domäne entfernt werden
Frage von NilsvLehnWindows Server18 Kommentare

HAllo, ich arbeite in einem Universitätsnetzwerk mit 3 Standorten. Die Standorte haben alle ein ESXi Cluster und auf diesen ...

Hardware
Kein Bild mit nur einer bestimmten Grafikkarten - Mainboard Konfiguration
gelöst Frage von bestelittHardware18 Kommentare

Hallo zusammen, ich hatte schon einmal eine ähnliche Frage gestellt. Damals hatte ich genau das gleiche Problem. Allerdings lies ...

Netzwerkmanagement
Mehrere Netzwerkadapter in einem PC zu einem Switch zusammenfügen
Frage von prodriveNetzwerkmanagement17 Kommentare

Hallo zusammen Vorweg, ich konnte schon einige IT-Probleme mit Hilfe dieses Forums lösen. Wirklich klasse hier! Doch für das ...

Hardware
Links klick bei Maus funktioniert nicht
gelöst Frage von Pablu23Hardware16 Kommentare

Hallo erstmal. Ich habe ein Problem mit meiner relativ alten maus jedoch denke ich nicht das es an der ...