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
GELÖST

Batch - reg query Zeichnfolge und Wert auslesen, bei CALL Parameterübergabe (Leerzeichen Problem)

Frage Entwicklung Batch & Shell

Mitglied: xpander

xpander (Level 1) - Jetzt verbinden

12.06.2009, aktualisiert 20:14 Uhr, 10196 Aufrufe, 4 Kommentare

Hallo Leute,

ich suche eine Lösung für mein folgendes Problem, kann mir dabei jemand bitte helfen?

Ich möchte mit reg query Zeichnfolgen und Werte auslesen und die Zeichnfolgen (%1) als Variable mit dem Wert (%3 usw) setzen.

Bei Beispiel 1- Alles bestens wenn die Werte keine Leerzeichen haben (bei Pfaden zB.)
Bei Beispiel 2 - habe ich 2 Probleme:
1. Bei jedem Parameter der keinen Inhalt hat bekommt die Variable %1 (:SET2) ein Leerzeichen dazu und ich kann mit den Variablen nicht weiterarbeiten
2. Was mache ich wenn der Registry Schlüssel mehr als 9 Zeichenfolgen hat?


Hier mein erster Anfänger Versuch:

01.
:: BEISPIEL 1 
02.
for /f "tokens=1,3 delims= " %%a in ('reg query "HKEY_LOCAL_MACHINE\IRGENDWAS" ^|findstr "REG_SZ"') do call :SET1 %%a %%b 
03.
:: BEISPIEL 2 
04.
for /f "tokens=1,3-9 delims= " %%a in ('reg query "HKEY_LOCAL_MACHINE\IRGENDWAS" ^|findstr "REG_SZ"') do call :SET2 %%a %%b %%c %%d %%e %%f %%g %%h 
05.
 
06.
:SET1 
07.
set "%1=%2" 
08.
goto :EOF 
09.
:SET2 
10.
set "%1=%2 %3 %4 %5 %6 %7 %8 %9" 
11.
goto :EOF
Wie muss die 2. Schleife aussehen damit das ohne umwege klappt?

gruß xpander
Mitglied: bastla
12.06.2009 um 23:01 Uhr
Hallo xpander!

Eigentlich stellt sich die Frage, was Du denn dann weiter mit den Variablen(-werten) vor hast (das Unterprogramm hat nur dann Sinn, wenn dort mehr als nur die Zuweisung erfolgen soll) ...

... ansonsten etwa so:
01.
for /f "tokens=1,2* delims= " %%a in ('reg query "HKEY_LOCAL_MACHINE\IRGENDWAS" ^|findstr "REG_SZ"') do call :SET2 %%a "%%c" 
02.
goto :eof 
03.
 
04.
:SET2 
05.
set "%1=%~2" 
06.
goto :eof
Grüße
bastla
Bitte warten ..
Mitglied: xpander
12.06.2009 um 23:51 Uhr
Hi bastla

Aha, also den 2. Parameter mit %~2 expandieren und Anführungszeichen entfernen, da war ich bei meinen Versuchen ja schon knapp dran
Nur auf tokens=1,2* mit call :SET2 %%a "%%c", also das dann alles in "%%c" drin ist - darauf bin ich nicht gekommen,
hab mich da irgendwie auf token 1,3 versteift weil ich ja 2 nicht brauche. Batch ist manchmal schon etwas seltsam für mich

Wieder was gelernt.
Toll, ich denke mein Problem ist gelöst - vielen dank bastla!

Und ja, eigentlich findet im Unterprogramm nur die Zuweisung statt - sollte ich es anders machen?
Ich glaube ich hatte das mal so gemacht, weil ich irgendwann mal Probleme mit den Variablen hatte, also leere Variablen in einer if-Abfrage oder so in der Art.
Weiß leider nicht mehr genau - ich weiß nur noch, dass mir da noch einiges an Wissen fehlt/e

gruß xpander
Bitte warten ..
Mitglied: bastla
13.06.2009 um 10:46 Uhr
Hallo xpander!

Ohne Unterprogramm würde das einfach so aussehen:
for /f "tokens=1,2* delims= " %%a in ('reg query "HKEY_LOCAL_MACHINE\IRGENDWAS" ^|findstr "REG_SZ"') do set "%%a=%%c"
Grüße
bastla
Bitte warten ..
Mitglied: xpander
13.06.2009 um 12:24 Uhr
Hi bastla

Kann ich so nicht machen, da Pfade aus der Registry dann entweder so "%Variablen%\Irgendwas" oder so "REG_SZ\Irgendwas" aussehen.
Ich verwende in den Registry Werten auch Variablen in den Pfaden, dachte da gibts noch einen anderen Weg...

trozdem danke bastla!
gruß xpander
Bitte warten ..
Ähnliche Inhalte
Windows Tools
Reg query abfrage in batch mit goto
gelöst Frage von 114449Windows Tools4 Kommentare

Hallo zusammen, ich möchte eine REG_SZ Schlüssle in einer Batch abfragen und dann einen goto Sprung machen. die abfrage ...

Batch & Shell
Erstellen von Verknüpfungen - Parameterübergabe, Leerzeichen im Pfad
gelöst Frage von AlfornoBatch & Shell13 Kommentare

Hallo, ich möchte gerne per Batch und vbs eine Verknüpfung auf eine pdf erstellen, die im Netzwerk liegt. Hier ...

Windows 10
REG Query HKLM
Frage von AtoAtoWindows 103 Kommentare

Hallo mit REG Query HKLM /F "PC 12" /S In Powershell kann man in HKLM-Baum nach PC 12 suchen. ...

Batch & Shell
Reg query unter Session 0
Frage von UragusBatch & Shell3 Kommentare

Hallo, Kann mir jemand folgendes erklären. Ich habe einen Skript des ein Programms deinstalliert, der funktioniert auch eigentlich. Sobald ...

Neue Wissensbeiträge
Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 1 TagWindows 102 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 1 TagSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Internet

USA: Die FCC schaff die Netzneutralität ab

Information von Frank vor 1 TagInternet3 Kommentare

Jetzt beschädigt US-Präsident Donald Trump auch noch das Internet. Der neu eingesetzte FCC-Chef Ajit Pai ist bekannter Gegner einer ...

DSL, VDSL

ALL-BM200VDSL2V - Neues VDSL-Modem mit Vectoring von Allnet

Information von Lochkartenstanzer vor 1 TagDSL, VDSL2 Kommentare

Moin, Falls jemand eine Alternative zu dem draytek sucht: Gruß lks

Heiß diskutierte Inhalte
Windows Server
GPO nur für bestimmte Computer
Frage von Leo-leWindows Server13 Kommentare

Hallo Forum, gern würde ich ein Robocopy script per Bat an eine GPO hängen. Wichtig wäre aber dort der ...

Windows Server
KMS Facts for Client configuration
Frage von winlinWindows Server13 Kommentare

Hey Leute, wir haben in unserem Netz nun einen neuen KMS Server. Haben Bestands-VMs die noch nicht aktiviert sind. ...

Router & Routing
OpenWRT bzw. L.E.D.E auf Buffalo WZR-HP-AG300H - update
gelöst Frage von EpigeneseRouter & Routing11 Kommentare

Guten Tag, ich habe auf einem Buffalo WZR-HP-AG300H die alternative Firmware vom L.E.D.E Projekt geflasht. Ich bin es von ...

Windows Tools
Software-Tool zum Entfernen von bösartigem Windows
Frage von emeriksWindows Tools11 Kommentare

Hi, siehe Betreff hat das jemals irgendjemand schonmal sinnvoll eingesetzt? (MRT) E.