mathold
Goto Top

Mittels Batch bestimmte Textzeilen löschen

Hallo miteinander,

hab da ein kleines Problem wiedermal.
Hab eine Logfile.txt die sich täglich aktualesiert, die wie folgt ausschaut...

"TS=Paul\\, Katrin,OU=KC,OU=HUG,DC=Kug,DC=de",Paul,11023983
"TS=Grenzt- Gast,OU=KC,OU=HUG,DC=Kug,DC=de",Personal-Gast,12312233
"TS=Logsto\\, Jens,OU=KC,OU=HUG,DC=Kug,DC=de",jfuel,00011108
"TS=Kunstl\\, I-Punkt,OU=KC,OU=HUG,DC=Kug,DC=de",Logistik,323123442
"TS=Habete\\, Aldue,OU=KC,OU=HUG,DC=Kug,DC=de",Agate,00111761


Würde die File gern durch eine Batch überarbeiten, hab aber leider schon lange nichts mehr
mit Batch gemacht. Die File sollte dann wie folgt ausschauen.


Paul,11023983
Personal-Gast,12312233
jfuel,00011108
Logistik,323123442
Agate,00111761

Sprich das nur der Name und die Personalnummer übrigbleibt.
Mit dem Kommando find hab ich bisschen rumprobiert aber komm nich zum gewünschten Ergebnis.
Über jede Hilfe würde ich mich wie immer freuen.

mfg mathold

Content-ID: 104270

Url: https://administrator.de/forum/mittels-batch-bestimmte-textzeilen-loeschen-104270.html

Ausgedruckt am: 22.12.2024 um 15:12 Uhr

AndreasWil
AndreasWil 17.12.2008 um 10:42:00 Uhr
Goto Top
Hallo Mathold. Ich bin kein Freund von Batch-Dateien. Ich würde das etwas anders realisieren. Meine Lösung wär ein kleines vb.net Programm.
Mit dem Streamwriter und Streamreader liest man einzelln die Zeilen aus aus einer Datei heraus und benutzt den Befehl string.replace um Teile wie "TS=" mit "" zu ersetzten.
Vorteil an bei dieser Variante ist, du kannst über ein FileOpenDialog eine Datei auswählen, die du "manipulieren" willst oder direkt in die Quelle einen bestimmte Datei mit Pfad genau festlegen.
bastla
bastla 17.12.2008 um 10:55:28 Uhr
Goto Top
Hallo mathold!

Für die Freunde der Batchdateien face-wink:
@echo off & setlocal
set "Log=D:\Log.txt"  
set "Aus=D:\LogKurz.txt"  

if exist "%Aus%" del "%Aus%"  
for /f "usebackq tokens=7,8 delims=," %%i in ("%Log%") do >>"%Aus%" echo %%i,%%j  
Grüße
bastla

P.S.: @AndreasWil: vb.net wäre dann aber doch ein wenig mit Kanonen auf Spatzen geschossen - wenn schon VB, sollte es auch ein Stück VBScript tun ...

[Edit] Fehlende Prozentzeichen vor %i und %j nachgetragen [/Edit]
Zitruslimmonade
Zitruslimmonade 17.12.2008 um 11:04:08 Uhr
Goto Top
Nur mal so an alle administrator.de user... Hier haben wir wieder ein Beipiel...
Wenn ich nachfrage wie ich meine MySQL Datenbank mit dem AD Server sychronisiert bekomme ich die Antwort:"such bei google" wenn einer zum 100sten mal fragt wie man ne tecktzeile mittels batch löscht, filtert oder ersetzt.. kommt spontan die Antwort... so bitte was mach ich falsch ???
Nichts gegen den poster... richtet sich gerade gegen jemand ganz speziellen der sich hoffentlich wieder erkennt

gruss
paulepank
paulepank 17.12.2008 um 11:04:16 Uhr
Goto Top
Hallo

@bastla
das wird aber nur funktionieren, wenn der Threadersteller sich bei den Beispieldaten im 2.Satz vertippt hat. face-smile

@mathold
was dein Anliegen mit der Überschrift zu tun hat, weißt nur du allein. face-sad

Wenn deine Beispieldaten wirklich real sind, dann würd ich mir z.B. den AWK besorgen und das vorletzte und letzte Feld ausgeben lassen.

cu paulepank
mathold
mathold 19.12.2008 um 12:47:02 Uhr
Goto Top
sers zusammen!

vielen dank für die schnellen antworten...
@paulepank:
hat hingehaun mit deim beispiel schließlich.
merci mfg mathold