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

im batch nach inhalt suchen und löschen...

Frage Entwicklung Batch & Shell

Mitglied: derfragende

derfragende (Level 1) - Jetzt verbinden

10.01.2008, aktualisiert 11.01.2008, 7905 Aufrufe, 2 Kommentare

meine frage ist wie kann ich nach einem bestimmten wort suchen innerhalb eines dokuments!?

ein beispiel:

REM Suchstring
SET string= " ## such wort ## "

also es soll auch die dokumente löschen wo es drin vor kommt.
Bedanke mich im voraus
Mitglied: bastla
10.01.2008 um 16:40 Uhr
Hallo derfragende und willkommen im Forum!

Suchen kannst Du mit "findstr", zum Löschen der den Suchstring enthaltenden Dokumente kannst Du etwa so vorgehen:
01.
@echo off & setlocal 
02.
rem StartPfad ohne abschließenden \ angeben! 
03.
set "StartPfad=D:" 
04.
set "DateiMaske=*.txt" 
05.
set "SuchString= ## such wort ## " 
06.
 
07.
for /f "delims=" %%i in ('findstr /s /m /c:"%SuchString%" "%StartPfad%\%DateiMaske%"') do echo del "%%i"
Gesucht wird (wegen des "/s") auch in allen Unterordnern des Startpfades, wobei exakte Übereinstimmung (auch hinsichtlich Groß-/Kleinschreibung) verlangt wird. Soll Groß-/Kleinschreibung nicht beachtet werden, musst Du zusätzlich den Schalter "/i" verwenden (siehe auch "findstr /?").

Entweder schreibst Du den Startpfad (wie im Beispiel oben) ohne "\" am Ende (auch wenn eigentlich "D:\" gemeint ist), oder immer mit "\" und musst dafür im Gegenzug den "\" zwischen %StartPfad% und %DateiMaske% entfernen. Dritte Möglichkeit: Pfad und Maske in einer Variablen zusammenfassen und nur diese für "findstr" verwenden.

Wegen des "echo" wird der Löschbefehl nur angezeigt, aber nicht ausgeführt - wenn der Test zufriedenstellend verlaufen ist, einfach das "echo" entfernen ...
Abschließend noch ein Hinweis zur Zuweisung des Wertes zur Variablen %string% in Deinem Beispiel: Wenn Du nach dem "=" ein Leerzeichen schreibst, wird dieses ebenso in der Variable gespeichert wie die Anführungszeichen. Alternativ dazu die oben verwendete Schreibweise:
01.
set "SuchString= ## such wort ## "
Hier enthält die Variable tatsächlich nur jeweils eine Leerstelle am Beginn und am Ende und keine Anführungszeichen, was Du durch eine zusätzliche Zeile der Art
01.
echo [%SuchString%]
testen kannst.

Grüße
bastla
Bitte warten ..
Mitglied: derfragende
11.01.2008 um 14:06 Uhr
Vielen Dank !!!!
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Doppelte Dateneinträge per Batch aus Datei löschen? HILFE (7)

Frage von freshman2017 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch Datei: PDF Dateien verschieben, umbenennen und löschen (4)

Frage von F0rcehunter zum Thema Batch & Shell ...

Batch & Shell
Batch mit forfiles - Dateiendung filtern - Dateien löschen (2)

Frage von mschaedler1982 zum Thema Batch & Shell ...

Batch & Shell
Dateitypen aus Archiven löschen via Batch! (5)

Frage von Nightowl71 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Batch & Shell

Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Microsoft

Restrictor: Profi-Schutz für jedes Window

(6)

Tipp von AlFalcone zum Thema Microsoft ...

Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
gelöst Benutzer lässt sich nur an einem Clientcomputer anmelden (17)

Frage von Ammann zum Thema Windows Server ...

Vmware
gelöst Wie würdet Ihr eine ESXi Cluster Farm managen? (11)

Frage von AlFalcone zum Thema Vmware ...

Batch & Shell
gelöst Gruppenzugehörigkeit von AD Usern ermitteln - die Perfektion fehlt (11)

Frage von Stefan007 zum Thema Batch & Shell ...