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

Wort aus einer Text datei entfernen

Frage Entwicklung Batch & Shell

Mitglied: Bjoern909

Bjoern909 (Level 1) - Jetzt verbinden

03.02.2008, aktualisiert 04.02.2008, 6560 Aufrufe, 5 Kommentare

hallo Batchprofis,
Hier bin ich wieder.
Diesmal möchte ich ein Wort z.B.: Bjoern aus einer Textdatei entfernen. Ich weis aber nicht WO dieses Wort in der textdatei steht. Also kann keine Zeile nennen.

-------------Textdatei:
Daniel
Bjoern
Christian
Kristin

nach dem ausführen der Batch datei steht in der Textdatei dann nur noch:

--------------Textdatei:
Daniel
Christian
Kristin

so habe ich mir das vorgestellt. Wenn ihr noch mehr Informationen braucht dann sacht bescheid und WELCHE Infos ihr noch braucht.

MfG Bjoern
Mitglied: bastla
03.02.2008 um 18:09 Uhr
Hallo Bjoern909!

Soferne das Wort (wie in Deinem Beispiel) alleine in einer Zeile steht:
01.
findstr /v /b /e /c:"Bjoern" Textdatei.txt>TextdateiKurz.txt
Ansonsten etwa so:
01.
@echo off & setlocal enabledelayedexpansion 
02.
set "Datei=D:\DeinText.txt" 
03.
set "Wort=Bjoern" 
04.
 
05.
set "Bak=%Datei%.bak" 
06.
move "%Datei%" "%Bak%" 
07.
for /f "usebackq delims=" %%i in ("%Bak%") do set "Zeile=%%i" & call :ProcessLine 
08.
goto :eof 
09.
 
10.
:ProcessLine 
11.
echo %Zeile%|findstr /c:"%Wort%">nul || goto :SchreibeZeile 
12.
set "Zeile=!Zeile:%Wort%=!" 
13.
 
14.
:SchreibeZeile 
15.
echo.%Zeile%>>"%Datei%"
Einschränkung dieser Variante: Wenn ein "!" im Text vorkommt, wird dieses entfernt, gibt es in der selben Zeile ein zweites "!", verschwindet auch der Text dazwischen. Auch Leerzeilen gehen verloren.

Gesucht wird übrigens auch nach Wortbestandteilen (wie etwa in "Jens-Bjoern" oder "Bjoern-Uwe").

Zumindest dem "!"-Problem ließe sich bei Bedarf entweder durch die Verwendung einer Konstanten (das Wort muss anstelle der Variablen %Wort% in die beiden Zeilen des Teiles ":ProcessLine" geschrieben und der Batch auch anderweitig angepasst werden) oder den Einsatz eines (temporären) VBScripts (damit blieben auch ev Leerzeilen erhalten) beikommen.

Die Frage, wie (abgetrennt - wenn ja: wodurch? - oder als Wortbestandteil) bzw wo (Beginn oder Ende der Zeile oder auch mittendrin) das Wort in der Zeile steht, wäre aber noch zu klären.

Grüße
bastla
Bitte warten ..
Mitglied: Bjoern909
03.02.2008 um 18:56 Uhr
Okay dein 2. Beispiel habe ich verstanden aber das erste verstehe ich irgendwie nicht. Textdatei ist die eigentliche Datei aus der das Wort entfernt wird und Textdateikurz ist was? Wird das Wort aus Textdatei in Textdateikurz eingefügt oder ist textdateikurz gleich Textdatei (halt nur ohne das Wort)?
Bitte warten ..
Mitglied: bastla
03.02.2008 um 19:02 Uhr
Hallo Bjoern909!

... ist textdateikurz gleich Textdatei (halt nur ohne das Wort)?
Hat Dein Test etwas anderes ergeben?

Grüße
bastla
Bitte warten ..
Mitglied: Bjoern909
04.02.2008 um 12:45 Uhr
Nein ich weis nur nicht was ich bei textdateikurz.txt fürn Name angeben muss. oder kann ich den Namen lassen?
Bitte warten ..
Mitglied: bastla
04.02.2008 um 15:21 Uhr
Hallo Bjoern909!

Dann also komplett:
01.
@echo off & setlocal 
02.
set "Datei=D:\DeinText.txt" 
03.
set "Wort=Bjoern" 
04.
 
05.
set "Bak=%Datei%.bak" 
06.
move "%Datei%" "%Bak%" 
07.
findstr /v /b /e /c:"%Wort%" "%Bak%">"%Datei%"
Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
VB for Applications
gelöst csv Dateien als Text importieren (7)

Frage von Bacchida zum Thema VB for Applications ...

Ubuntu
gelöst Regex - zusammengefasste Wörter finden und korrekt trennen??? (6)

Frage von takitano zum Thema Ubuntu ...

Batch & Shell
Dateien umbenennen - ersten Zeichen entfernen (3)

Frage von jan999 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Linux Netzwerk

Ping und das einstellbare Bytepattern

Erfahrungsbericht von LordGurke zum Thema Linux Netzwerk ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(3)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Heiß diskutierte Inhalte
SAN, NAS, DAS
MSA 2050 RAID Konfig (24)

Frage von Leo-le zum Thema SAN, NAS, DAS ...

Netzwerkmanagement
Windows Server 2008 R2: "netsh reset" nicht verfügbar? (10)

Frage von RickTucker zum Thema Netzwerkmanagement ...

Netzwerkmanagement
Suche eine Software für Cloudverwaltung (6)

Frage von tsunami zum Thema Netzwerkmanagement ...

Google Android
Musik Wiedergabe am PC mit Smartphone über Bluetooth steuern (5)

Frage von justlukas zum Thema Google Android ...