In einer Textdatei jede Zeile kürzen, als Batchfile
Hallo Zusammen,
ich hätte einmal eine Frage bezüglich des kürzens von Textzeilen in einem txt-file per batch.
Ich bekomme eine txt-Datei mit folgendem Inhalt (gekürzt):
20130006\\+HS =BS.T6\\-K1Kennzeichnugsschilder 95 Plaettchen
20130006\\+HS =BS.T7\\-K1Kennzeichnugsschilder 63 Plaettchen
20130006\\+HS =BS.DP1\\-A4Kennzeichnugsschilder E22 Etiketten
20130006\\+HS =BS.DP1\\-A5Kennzeichnugsschilder E22 Etiketten
Anschließend sortiere ich nach 95, 63 und E22 in eigene txt-Dateien, Bis dahin bekomme ich es hin. In dieser Datei möchte ich alles ab Kennzeichnungsschilder ... abschneiden weil ich das nicht mehr benötige. Ich ringe mich gerade so durch mit Beispielen im Internet, drum bekomme ich das auch schon soweit mit der sortierung hin, bin aber absoluter Laie in Sachen scripting.
PS: Das mit der Sortierung folgt über
Das Problem ist nur wenn ich mal nach zb einer 20 Suchen muss dann ist nämlich jede Zeile gemeint
(20130006\\+HS =BS.T6\\-K1Kennzeichnugsschilder 95 Plaettchen ) obwohl in diesem Beispiel nur nach 95 gewertet werden muss.
Kann ich den Anschließenden TAB nutzen, also findstr "95\t" oder so. Bzw mit 95\t funktioniert es nicht selbst beim kürzel findstr \C nicht.
Edit: Ups Frage ist ein bisschen blöd gestellt, also mein Hauptproblem ist das Abschneiden der Textzeile. Das mit der Sortierung funktioniert bis dahin, nur wenn die Nummern sich mal ändern. Quasi ist statisch und unschön)
gruß ginges
ich hätte einmal eine Frage bezüglich des kürzens von Textzeilen in einem txt-file per batch.
Ich bekomme eine txt-Datei mit folgendem Inhalt (gekürzt):
20130006\\+HS =BS.T6\\-K1Kennzeichnugsschilder 95 Plaettchen
20130006\\+HS =BS.T7\\-K1Kennzeichnugsschilder 63 Plaettchen
20130006\\+HS =BS.DP1\\-A4Kennzeichnugsschilder E22 Etiketten
20130006\\+HS =BS.DP1\\-A5Kennzeichnugsschilder E22 Etiketten
Anschließend sortiere ich nach 95, 63 und E22 in eigene txt-Dateien, Bis dahin bekomme ich es hin. In dieser Datei möchte ich alles ab Kennzeichnungsschilder ... abschneiden weil ich das nicht mehr benötige. Ich ringe mich gerade so durch mit Beispielen im Internet, drum bekomme ich das auch schon soweit mit der sortierung hin, bin aber absoluter Laie in Sachen scripting.
PS: Das mit der Sortierung folgt über
findstr "E22" < TEST\Etiketten.txt > TEST\Etiketten\E22.txt
Das Problem ist nur wenn ich mal nach zb einer 20 Suchen muss dann ist nämlich jede Zeile gemeint
(20130006\\+HS =BS.T6\\-K1Kennzeichnugsschilder 95 Plaettchen ) obwohl in diesem Beispiel nur nach 95 gewertet werden muss.
Kann ich den Anschließenden TAB nutzen, also findstr "95\t" oder so. Bzw mit 95\t funktioniert es nicht selbst beim kürzel findstr \C nicht.
Edit: Ups Frage ist ein bisschen blöd gestellt, also mein Hauptproblem ist das Abschneiden der Textzeile. Das mit der Sortierung funktioniert bis dahin, nur wenn die Nummern sich mal ändern. Quasi ist statisch und unschön)
gruß ginges
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 207874
Url: https://administrator.de/forum/in-einer-textdatei-jede-zeile-kuerzen-als-batchfile-207874.html
Ausgedruckt am: 10.05.2025 um 13:05 Uhr
10 Kommentare
Neuester Kommentar
Was hast du für einen Editor?
Mit Notepad++ geht es problemlos.
Standard zum Durchsuchen ist natürlich grep.
Da kannst du das so eingeben:
Gruss!
PS: OMG, da fällt mir ein, das geht mit findstr auch:
Mit Notepad++ geht es problemlos.
findstr
kann \tabs durchaus erkennen.Standard zum Durchsuchen ist natürlich grep.
Da kannst du das so eingeben:
grep "\b20\b" file
.Gruss!
PS: OMG, da fällt mir ein, das geht mit findstr auch:
findstr /r "\<20\>" file
, na ja, Kaffeemangel
Hallo ginges,
hier mal ein paar
Gruss!
hier mal ein paar
findstr
-Beispiele, was so geht:>type text.txt
Herz
Herz und Schmerz
Herz Schmerz
Schmerz
Harz
>findstr "Herz Schmerz" text.txt &rem ODER-suche
Herz
Herz und Schmerz
Herz Schmerz
Schmerz
>findstr /C:"Herz Schmerz" text.txt &rem GENAUER Text
Herz Schmerz
>findstr /X "Herz" text.txt &rem GANZE Zeile
Herz
>findstr /r "^Herz$" text.txt &rem auch GANZE Zeile
Herz
>findstr /r "H[ea]rz" text.txt &rem REGEX Beispiel
Herz
Herz und Schmerz
Herz Schmerz
Harz
>findstr /C:"Herz Schmerz" /C:"Harz" text.txt &rem 2x GENAUER Text
Herz Schmerz
Harz
>findstr /i "herz" text.txt | findstr /i "schmerz" &rem UND-Suche, gross/klein ignorieren
Herz und Schmerz
Herz Schmerz
Gruss!
Hallo ginges,
das sagt die Kommandozeilenhilfe dazu:
Wie du siehst, kannst du dir Ergebnisse sogar bunt anzeigen lassen
Gruss!
das sagt die Kommandozeilenhilfe dazu:
>findstr /?
Sucht nach Zeichenfolgen in Dateien.
FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:Datei]
[/C:Zeichenfolge] [/G:Datei] [/D:Verz.liste] [/A:Farbattribute] [/OFF[LINE]]
Zeichenfolgen [[Laufwerk:][Pfad]Dateiname[ ...]]
/B Sucht am Zeilenanfang.
/E Sucht am Zeilenende.
/L Sucht nach dem Text buchstabengetreu.
/R Sucht nach der Zeichenfolge als regulärem Ausdruck.
/S Sucht nach entsprechenden Dateien im aktuellen Verzeichnis
und allen Unterverzeichnissen.
/I Ignoriert Groß-/Kleinschreibung.
/X Gibt Zeilen aus, die vollkommen übereinstimmen.
/V Gibt Zeilen aus, die die Zeichenfolge nicht enthalten.
/N Gibt die Zeilennummer vor jeder Trefferzeile an.
/M Gibt nur die Namen der Dateien aus, die die Zeichenfolge enthalten.
/O Gibt den Offset des Zeichens vor jeder gefundenen Zeile aus.
/P Überspringt Dateien mit Zeichen, die nicht gedruckt werden können.
/OFF[LINE] Überspringt keine Offlinedateien.
/A:Attrib Gibt die Farbattribute als zwei hexadezimale Ziffern an.
Siehe "COLOR /?"
/F:Datei Liest eine Dateiliste aus der angegebenen Datei ein.
/C:Zeichenfolge Sucht nach Zeichenfolge buchstabengetreu.
/G:Datei Liest Suchzeichenfolge aus der angegebenen Datei ein.
/D:Verzeichnis Durchsucht eine mit Semikolons getrennte Verzeichnisliste.
Zeichenfolge Text, nach dem gesucht werden soll.
[Laufwerk:][Pfad] Dateiname
Angabe der zu durchsuchenden Datei(en).
Leerzeichen weisen auf mehrere getrennte Zeichenfolgen hin, außer es wurde /C
als Option angegeben. Zum Beispiel sucht 'FINDSTR "Windows NT" BR.TXT' nach
"Windows" oder "NT" in der Datei BR.TXT. 'FINDSTR /C:"Windows NT" BR.TXT'
hingegen sucht nach "Windows NT" in der Datei BR.TXT.
Schnellübersicht regulärer Ausdrücke:
. Platzhalter: beliebiges Zeichen
* Wiederholung: keine oder mehrere Wiederholungen
des/der vorhergehenden Zeichens/Klasse
^ Zeilenposition: Anfang der Zeile
$ Zeilenposition: Ende der Zeile
[Klasse] Zeichenklasse: beliebiges Zeichen aus einem Zeichensatz
[^Klasse] Umgekehrte Klasse: beliebiges Zeichen nicht im Zeichensatz
[x-y] Bereich: beliebige Zeichen im angegebenen Bereich
\x Escape: direkte Verwendung eines Metazeichens x
\<xyz Wortposition: am Anfang des Wortes
xyz\> Wortposition: am Ende des Wortes
Informationen zu FINDSTR mit regulären Ausdrücken finden Sie im
Onlinebefehlsverzeichnis.
Wie du siehst, kannst du dir Ergebnisse sogar bunt anzeigen lassen
Gruss!