Suchen Sie am Anfang aller Zeilen in einer Datei nach einer Zeichenfolge und speichern Sie sie in einer anderen Datei

Suchen Sie am Anfang aller Zeilen in einer Datei nach einer Zeichenfolge und speichern Sie sie in einer anderen Datei

Ich habe für diese Aufgabe schon einige Optionen ohne Erfolg ausprobiert. Ich würde das wirklich gerne als Batchdatei machen, aber meine Versuche führen nicht zum gewünschten Ergebnis.

Ich habe viele verschiedene Befehle ausprobiert, findstraber es scheint, als würde alles in einer großen Zeile geschrieben, und außerdem sehen die Zeichen manchmal seltsam aus.

Einer meiner gescheiterten Versuche

findstr /i /n "\<JH*\>" c:\Users\Desktop\split\file.txt > JH.tx

Ich muss alle Einträge in einer .csvDatei finden, die mit " beginnt.JH" und speichern Sie nur diese in der neuen .csvDatei.

Beispiel einer CSV-Datei für die Suche

JH009,20,John May.pdf
PB184,90,Chicken.pdf
JH024,10,Fred Walmsley.pdf
JH080,12,Now Call.pdf 
PB091,10,Mice.pdf
PB884,1040,Cat Order.pdf

Erwartetes Ergebnis in der neuen CSV-Ausgabedatei

JH009,20,John May.pdf 
JH024,10,Fred Walmsley.pdf
JH080,12,Now Call.pdf

Antwort1

Du kannst den ... benutzenFindstrBefehl mit dem /BSchalter, um anzugeben, dass das Muster am Anfang der Zeilen in der gesuchten Datei abgeglichen werden soll. Wenn das Muster nicht zwischen Groß- und Kleinschreibung unterscheiden soll, verwenden Sie den /ISchalter, oder lassen Sie ihn einfach aus dem Befehl weg, um eine zwischen Groß- und Kleinschreibung unterscheidende Musterübereinstimmung der Zeichenfolge zu erzielen.

Syntax

FindStr /I /B "JH" "c:\Users\Desktop\split\file.txt" > "JH.csv"

Durchsuchte Datei

JH009,20,John May.pdf
PB184,90,Chicken.pdf
JH024,10,Fred Walmsley.pdf
JH080,12,Now Call.pdf
PB091,10,Mice.pdf
PB884,1040,Cat Order.pdf

Ausgabe des Befehls „FindStr“

JH009,20,John May.pdf
JH024,10,Fred Walmsley.pdf
JH080,12,Now Call.pdf

Weitere Ressourcen

  • Findstr

  • FindStr /?

    /B         Matches pattern if at the beginning of a line.   
    /I         Specifies that the search is not to be case-sensitive.
    

    Example: FindStr /I /B "<String>" "<FileToSearch>" > "<OutputFile>" 
    
  • Umleitung

verwandte Informationen