connecthor
Goto Top

Text finden und die nächsten x Zeilen löschen

hallo, guten tag

ich benötige mal wieder ein wenig unterstützung.

Ich habe registry-schlüssel in eine .txt exportiert. nun benötige ich aber nur bestimmte werte aus der registry.
fall: im zuge der sicherheitsinspektion in der firma sollen diverse dinge geprüft werden(firewall an?; ports geöffnet;proxy settings;wsus adresse ...und lokale user).

das auslesen der user sieht so aus:
HKEY_LOCAL_MACHINE\Software\microsoft\windows nt\CurrentVersion\ProfileList\S-1-5-20
    ProfileImagePath	REG_EXPAND_SZ	%SystemDrive%\Dokumente und Einstellungen\NetworkService
    Sid	REG_BINARY	010100000000000514000000
    Flags	REG_DWORD	0x9
    State	REG_DWORD	0x0
    CentralProfile	REG_SZ	
    ProfileLoadTimeLow	REG_DWORD	0x615b1dfa
    ProfileLoadTimeHigh	REG_DWORD	0x1cd7460
    RefCount	REG_DWORD	0x2

HKEY_LOCAL_MACHINE\Software\microsoft\windows nt\CurrentVersion\ProfileList\S-1-5-21-164115752-568394748-1468909586-1003
    ProfileImagePath	REG_EXPAND_SZ	%SystemDrive%\Dokumente und Einstellungen\test
    Sid	REG_BINARY	0105000000000005150000002835C809FC03E12112C88D57EB030000
    Flags	REG_DWORD	0x0
    State	REG_DWORD	0x104
    CentralProfile	REG_SZ	
    ProfileLoadTimeLow	REG_DWORD	0x54f9d633
    ProfileLoadTimeHigh	REG_DWORD	0x1cadfcb
    RefCount	REG_DWORD	0x0
    RunLogonScriptSync	REG_DWORD	0x0

HKEY_LOCAL_MACHINE\Software\microsoft\windows nt\CurrentVersion\ProfileList\S-1-5-21-164115752-568394748-1468909586-500
    ProfileImagePath	REG_EXPAND_SZ	%SystemDrive%\Dokumente und Einstellungen\Administrator
    Sid	REG_BINARY	0105000000000005150000002835C809FC03E12112C88D57F4010000
    Flags	REG_DWORD	0x0
    State	REG_DWORD	0x100
    CentralProfile	REG_SZ	
    ProfileLoadTimeLow	REG_DWORD	0x50235704
    ProfileLoadTimeHigh	REG_DWORD	0x1cd23e7
    RefCount	REG_DWORD	0x0
    RunLogonScriptSync	REG_DWORD	0x0
    OptimizedLogonStatus	REG_DWORD	0x5

HKEY_LOCAL_MACHINE\Software\microsoft\windows nt\CurrentVersion\ProfileList\S-1-5-21-2387321819-182339941-3975157449-10004
    ProfileImagePath	REG_EXPAND_SZ	%SystemDrive%\Dokumente und Einstellungen\a.sander
    Sid	REG_BINARY	010500000000000515000000DBA34B8E6549DE0AC916F0EC14270000
    Flags	REG_DWORD	0x0
    State	REG_DWORD	0x14
    CentralProfile	REG_SZ	\\XXX
    ProfileLoadTimeLow	REG_DWORD	0x4ccad970
    ProfileLoadTimeHigh	REG_DWORD	0x1cd2866
    RefCount	REG_DWORD	0x1
    RunLogonScriptSync	REG_DWORD	0x0

nun möchte ich, dass die 11 zeilen unter HKEY_LOCAL_MACHINE\Software\microsoft\windows nt\CurrentVersion\ProfileList\S-1-5-21-2387321819-182339941-3975157449-XXXX (inklusive)gelöscht werden.

DAnke!!

Content-ID: 189215

Url: https://administrator.de/contentid/189215

Ausgedruckt am: 19.11.2024 um 15:11 Uhr

MrNetman
MrNetman 07.08.2012 um 17:46:36 Uhr
Goto Top
Hi connector,

Thor wie der Donnergott oder wie der Einfältige?

Zu deiner Frage:
Erstens fehlen hinweise aufs OS.
Zweitens solltes du erst einmal prüfen, ob es den Schlüssel überhaupt auf mehr als einem Rechner gibt. Sonst erledigt sich das automatische Suchen schon einmal. Vielleicht reduzierst du die Suche nach "HKEY_LOCAL_MACHINE\Software\microsoft\windows nt\CurrentVersion\ProfileList\S-1-5-21"
Aber das entspricht dem Löschen des lokalen Profils.

Gruß
Netman
bastla
bastla 07.08.2012 um 20:26:49 Uhr
Goto Top
Hallo connecthor!

Unter der Annahme, dass Du eigentlich nicht 11 Zeilen, sondern alle Zeilen bis zur nächsten Leerzeile löschen willst, etwa so:
@echo off & setlocal
set "Ein=D:\RegExport.txt"  
set "Aus=D:\RegExport_kurz.txt"  
set "Suche=S-1-5-21-2387321819-182339941-3975157449-"  

set "Schreiben=True"  
(for /f "tokens=1* delims=:" %%i in ('findstr /n "^" "%Ein%"') do (  
    if "%%j"=="" set "Schreiben=True"  
    echo "%%j"|findstr "%Suche%">nul && set "Schreiben="  
    if defined Schreiben (
        set "Zeile=%%j"  
        setlocal enabledelayedexpansion
        echo(!Zeile!
        endlocal
    )
))>"%Aus%"  
Grüße
bastla
connecthor
connecthor 08.08.2012 um 22:04:43 Uhr
Goto Top
guten abend,

@lanman: bitte mit ´h´ auch wenn ich manchmal ziemlich blauäugig durch die welt gehe face-wink
mir geht es eigentlich primär darum, alle lokalen konten im windows auszulesen. da ich zu diesem zeitpunkt nur die möglichkeit kenne die servergespeicherten konten über die registry auszulesen und durch das löschen die lokalen herauszufiltern. wenn du eine einfachere methode kennst.. immer her damit!!! face-big-smile

@bastla: ich werd das mal testen

DANKE!!!