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

Filter reagieren falsch

Frage Entwicklung Batch & Shell

Mitglied: Pantherstyle

Pantherstyle (Level 1) - Jetzt verbinden

03.04.2009, aktualisiert 09:54 Uhr, 1992 Aufrufe, 1 Kommentar

Hallo,
ich habe folgenden Suchalgorythmus (vllt kommt er bekannt vor ;D):
01.
for /F "skip=1 tokens=1* delims=\" %%i IN (%HELP_PATH%\indexpfade.txt) DO ( 
02.
findstr /L :"\$Id \$Author \$URL \$LastChangedRevision \$LastChangedDate \$LastChangedBy" %SEARCH_PATH%\%%i 
03.
if ERRORLEVEL 1 echo %SEARCH_PATH%\%%i >> %HELP_PATH%\IDtreffer.txt 
04.
)
Dazu die Frage:
Wie kann ich diesen Algorythmus so verändern, dass er folgende Datei in IDTreffer schreibt?

    • $Id$
    • $URL$
    • $LastChange
    • $LastChangedDate$
    • $LastchangedBy$

Wie man sieht enthält die Datei Alle Angaben, bis auf $Author.
Das Problem dabei ist, dass mir das Programm nur die Dateien ausgibt, in denen ALLE Suchkriterien nicht enthalten sind. Wie kann ich das also so umschreiben, das Alle 100% tig enthalten sein müssen, damit er sie NICHT mit ausgibt?

Dankäfön schonmal im Voraus ;D
Mitglied: Biber
03.04.2009 um 16:21 Uhr
Moin Pantherstyle,

ich würde gar nicht erst versuchen, mir selbst einen Suchalgorithmus zusammenzuschroten, wenn ich doch schon ein so feines Tool wie Findstr.exe für lau nutzen kann.

Angenommen, Du klimperst alle Deine Pflichtworte in eine Textdatei (ich nenn die mal "Suchworte.txt"):
01.
$Id$ 
02.
$URL$ 
03.
$LastChange$ 
04.
$LastChangedDate$ 
05.
$LastchangedBy$ 
06.
$Author$
... und hast z.B. eine zu prüfende Datei "EineDatei.txt" des Aussehens...
01.
$Id$ 
02.
$URL$ 
03.
$LastChange$ 
04.
$LastChangedDate$ 
05.
$LastchangedBy$ 
06.
$Karl-HeinZ$
Dann ergäbe doch folgende Eingabe (gekennzeichnet durch ">" am CMD-Prompt. die Ausgabe darunter
01.
>findstr /L /i /v /G:e:\work\einedatei.txt e:\work\suchworte.txt 
02.
$Author$
---> denn $Author$ fehlt und ob noch irgendeine $Karl-heinZ$-Zeile drinsteht war ja nicht gefragt.
--> und der Returnwert /das ErrorLevel wäre 0 (da etwas gefunden)

Würde auch noch $Author$ in der zu prüfenden Datei stehen, wäre die Ausgabe "nix" und Errorlevel 1 (nix gefunden).

Also kannst Du in dein FOR-Konstrukt doch sinngemäß einbauen:
01.
for /F "skip=1 tokens=1* delims=\" %%i IN (%HELP_PATH%\indexpfade.txt) DO ( 
02.
findstr /L /i /v /G:%SEARCH_PATH%\%%i  suchworte.txt >nul && (echo %SEARCH_PATH%\%%i >>%HELP_PATH%\IDtreffer.txt) 
03.
)
... und alles ist fertig.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
HTML
Canvas mit Filter speichern (1)

Frage von tingel zum Thema HTML ...

Windows Netzwerk
DHCP MAC Filter unter W2008R2 (2)

Frage von sabines zum Thema Windows Netzwerk ...

Windows Server
gelöst WMI-Filter Syntax (10)

Frage von DasWombat1993 zum Thema Windows Server ...

Datenbanken
gelöst Access 2010 Filter zurücksetzen (6)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

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 ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Linksys wrt1200ac v2 mit dd-wrt: keine vlan-einstellungen im GUI (15)

Frage von Pixi123 zum Thema Router & Routing ...

E-Business
Wo tragt ihr eure privaten Termine ein? (13)

Frage von honeybee zum Thema E-Business ...

Windows Server
Terminalserver starten willkürlich neu (12)

Frage von thaefliger zum Thema Windows Server ...

Entwicklung
gelöst Tipp für Anfänger- Wie würdet ihr automatischen Mailversand umsetzen? (12)

Frage von Cloudyme zum Thema Entwicklung ...