Batch zum Auslesen eines Stück Textes an einer bestimmten Stelle aus einer txt-Datei
Hallo zusammen,
ich bin neu hier und brauche Hilfe bei der Erstellung einer Batchdatei.
Folgendes Problem:
Aus einer Quelldatei soll ein bestimmter Text in eine neue Datei kopiert werden. Das Problem daran ist, dass dieser "bestimmte Text" erst gefunden werden muss. Was ich nicht weis, wie das Programmtechnisch aussehen muss.
Hier ein Beispiel für die Quelldatei:
AE41TRANS#%;4.1#%7845296#%001#%#%#%02#%SEA#%20080402#%#%#%FOB#%#%#%#%USPUA#%#%North America Inc.#%#%#%#%5, Lyberty Way#%#%01886#%Westford#%#%#%#%#%US#%MA#%#%#%PNA/BII#%#%#%#%C/O Brookvale International#%20943 South Maciel Avenue#%90810#%Carson#%#%#%#%#%US#%CA#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%007#%20080402#%#%#%#%#%#%7845296#%20080402#%#%#%#%#%EUR#%1#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%
AE41ITEM#%4.1#%7845296#%001#%1#%#%550003003#%Men's Boot Cut#%worn-out#%#%#%#%CO000000000422997#%20080117#%x#%20080117#%#%#%#%190#%Piece#%1#%25.20#%4788#%#%#%kg#%133#%kg#%620342#%#%#%#%#%TR#%#%1000#%11#%#%#%#%#%#%#%#%ASN00000000207364#%#%#%#%
AE41PACKG#%4.1#%7845296#%001#%ASN000000002073644#%ASN000000002073644#%#%CT#%1#%14#%kg#%15.1#%kg#%60#%40#%30#%cm#%#%#%#%#%#%#%#%
AE41PACKG#%4.1#%7845296#%001#%ASN000000002073645#%ASN000000002073645#%#%CT#%1#%7#%kg#%8.1#%kg#%60#%40#%30#%cm#%#%#%#%#%#%#%#%
AE41PACKG#%4.1#%7845296#%001#%ASN000000002073646#%ASN000000002073646#%#%CT#%1#%14#%kg#%15.1#%kg#%60#%40#%30#%cm#%#%#%#%#%#%#%#%
AE41PCKIT#%4.1#%7845296#%001#%1#%7845296#%ASN000000002073641#%20
AE41PCKIT#%4.1#%7845296#%001#%1#%7845296#%ASN000000002073649#%20
AE41PCKIT#%4.1#%7845296#%001#%1#%7845296#%ASN0000000020736410#%20
Aus dieser Datei brauche ich die Rechnungsnummer. Sie ist in diesem Fall die 7845296. Zu finden in der ersten Zeile nach dem zweiten Prozentzeichen und vor dem dritten #-Zeichen.
Ich hatte mich hier im Forum ein bischen eingelesen und habe es mit FOR /F "tokens=3 delims=%" %%i in (quelle.txt) do echo %%i probiert, scheitere aber glaub ich an dem %-Zeichen.
Vielleicht kann mir jemand helfen...
Danke und Gruß
oliweb
ich bin neu hier und brauche Hilfe bei der Erstellung einer Batchdatei.
Folgendes Problem:
Aus einer Quelldatei soll ein bestimmter Text in eine neue Datei kopiert werden. Das Problem daran ist, dass dieser "bestimmte Text" erst gefunden werden muss. Was ich nicht weis, wie das Programmtechnisch aussehen muss.
Hier ein Beispiel für die Quelldatei:
AE41TRANS#%;4.1#%7845296#%001#%#%#%02#%SEA#%20080402#%#%#%FOB#%#%#%#%USPUA#%#%North America Inc.#%#%#%#%5, Lyberty Way#%#%01886#%Westford#%#%#%#%#%US#%MA#%#%#%PNA/BII#%#%#%#%C/O Brookvale International#%20943 South Maciel Avenue#%90810#%Carson#%#%#%#%#%US#%CA#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%007#%20080402#%#%#%#%#%#%7845296#%20080402#%#%#%#%#%EUR#%1#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%
AE41ITEM#%4.1#%7845296#%001#%1#%#%550003003#%Men's Boot Cut#%worn-out#%#%#%#%CO000000000422997#%20080117#%x#%20080117#%#%#%#%190#%Piece#%1#%25.20#%4788#%#%#%kg#%133#%kg#%620342#%#%#%#%#%TR#%#%1000#%11#%#%#%#%#%#%#%#%ASN00000000207364#%#%#%#%
AE41PACKG#%4.1#%7845296#%001#%ASN000000002073644#%ASN000000002073644#%#%CT#%1#%14#%kg#%15.1#%kg#%60#%40#%30#%cm#%#%#%#%#%#%#%#%
AE41PACKG#%4.1#%7845296#%001#%ASN000000002073645#%ASN000000002073645#%#%CT#%1#%7#%kg#%8.1#%kg#%60#%40#%30#%cm#%#%#%#%#%#%#%#%
AE41PACKG#%4.1#%7845296#%001#%ASN000000002073646#%ASN000000002073646#%#%CT#%1#%14#%kg#%15.1#%kg#%60#%40#%30#%cm#%#%#%#%#%#%#%#%
AE41PCKIT#%4.1#%7845296#%001#%1#%7845296#%ASN000000002073641#%20
AE41PCKIT#%4.1#%7845296#%001#%1#%7845296#%ASN000000002073649#%20
AE41PCKIT#%4.1#%7845296#%001#%1#%7845296#%ASN0000000020736410#%20
Aus dieser Datei brauche ich die Rechnungsnummer. Sie ist in diesem Fall die 7845296. Zu finden in der ersten Zeile nach dem zweiten Prozentzeichen und vor dem dritten #-Zeichen.
Ich hatte mich hier im Forum ein bischen eingelesen und habe es mit FOR /F "tokens=3 delims=%" %%i in (quelle.txt) do echo %%i probiert, scheitere aber glaub ich an dem %-Zeichen.
Vielleicht kann mir jemand helfen...
Danke und Gruß
oliweb
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 84527
Url: https://administrator.de/forum/batch-zum-auslesen-eines-stueck-textes-an-einer-bestimmten-stelle-aus-einer-txt-datei-84527.html
Ausgedruckt am: 01.05.2025 um 18:05 Uhr
3 Kommentare
Neuester Kommentar
Moin Oliweb,
es sind ja immer die gleichen - also kannst Du entweder z.B. die erste oder die letzte nehmen.
Jeweils im Batch:
Die Letzte:
Die Erste:
Gruß
Biber
es sind ja immer die gleichen - also kannst Du entweder z.B. die erste oder die letzte nehmen.
Jeweils im Batch:
Die Letzte:
for /f "tokens=3 delims=#%%" %%i in (quelle.txt) do Set RechNr=%%i
:: Wert steht in variable %rechNr%
Die Erste:
for /f "tokens=3 delims=#%%" %%i in (quelle.txt) do if not defined Rechnr Set RechNr=%%i
:: Wert steht in Variable %rechNr%
Gruß
Biber