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 reg query pfad auslesen (pfad hat leerzeichen)

Frage Entwicklung Batch & Shell

Mitglied: stollkuehn

stollkuehn (Level 1) - Jetzt verbinden

20.03.2008, aktualisiert 20:34 Uhr, 11693 Aufrufe, 2 Kommentare

ich schaff es einfach nicht

Servus an alle,

kurz vor Ostern habe ich ein Problem was ich einfach nicht lösen kann, vielleicht, seh ich aber den Wald schon nicht mehr.

Also ich führe innerhalb eines Batch ein reg query aus und schreibe den inhalt des schlüssels in eine datei

01.
reg query HKCU\Software\IrgendeinSchlüssel\NochWas > test.txt
soweit so gut, alles kein problem

anschließend parse ich über das textfile mit ein for anweisung drüber.

01.
FOR /F "tokens=3" %%a IN ('findstr /c:"Directory" test.txt') DO SET DIRECTORY=%%a
das klappt auch wunderbar, mir dem kleinen aber feinen haken, das der REG_SZ Eintrag ein Pfad enthält. Pfade können Leerzeichen enthalten. Und genau da is das Problem. Enthält der REG_SZ ein trag als folgenden Wert:

01.
C:\Irgend Etwas\Wird Sich hier\vllt_verbergen
wird meine Variable DIRECTORY natürlich nur mit "C:\Irgendwas" befüllt. der rest fällt. weg. Wenn der immer gleich bleiben würde würde ich noch mehr tokens nehmen. das ist aber nicht drin, da der pfad variabel ist.

Das einzige was ich weiß das meine test.txt folgendermaßen aufgebaut ist.

01.
 
02.
HKCU\Software\IrgendeinSchlüssel\NochWas 
03.
    Directory    REG_SZ    C:\Irgend Etwas\Wird Sich hier\vllt_verbergen 
04.
    blabla    REG_SZ    bla
in jeder zeile die einen registrywert enthält wird jedes token also durch 4 leerzeichen von einander getrennt.

Leider kann ich in meiner for anweisung nicht beibringen das die delims gleich vier freizeichen sein sollen.

Hat jemand eine Idee?

Liebe Grüße aus Berlin und allen ein schönes Osterfest

Stefan
Mitglied: bastla
20.03.2008 um 20:18 Uhr
Hallo stollkuehn!

Vielleicht so (erspart auch das Temp-File):
01.
for /f "tokens=2*" %%a in ('reg query HKCU\Software\IrgendeinSchlüssel\NochWas^|findstr /c:"Directory"') do set "DIRECTORY=%%b"
Grüße
bastla
Bitte warten ..
Mitglied: stollkuehn
20.03.2008 um 20:34 Uhr
hallo bastla,

danke für die antwort. die Idee das in einer zeile zumachen kam mir auch. da ich aber mehrere werte aus der reg ziehe, dachte ich es wäre optimaler ein file zu schreiben und das zu parsen. auf jedenfall funktioniert deine zeile hervorragend.

ich werd das jetzt auf jeden fall erstmal in mein batch einbauen.

Danke dir

Gruß

Stefan
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst BATCH: Daten aus Textdatei auslesen und in neue Textdatei separieren (9)

Frage von Manuel1234 zum Thema Batch & Shell ...

Batch & Shell
Per Batch aktuell angemeldete User auslesen (1)

Frage von Peter32 zum Thema Batch & Shell ...

Batch & Shell
gelöst BATCH ini Datei Datei auslesen (2)

Frage von Juergen42 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 ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...

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

Frage von Unwichtig zum Thema Netzwerkmanagement ...