Ein Teil einer Zeile (34 oder 35) aus vielen eml-Datei kopieren und in eine TXT einfügen!
Hallo zusammen,
Ich habe eine große Anzahl von E-Mails und möchte gern die E-Mail-Adressen aus der "Antworten an Zeile" sichern um anschließend die E-Mails aus Platzgründen zu entfernen.
Leider gibt es für meine Thunderbird Version 60.9.1 kein passendes PlugIn um es zu filtern.
Daher habe ich gedacht, ich speichere mir die Dateien Lokal in einem Ordner und filtere mir aus den eml-Dateien jeweils die E-Mail-Adresse aus der 34 oder 35 Zeile heraus, in eine Lehre Textdatei.
geplante Abläufe:
1. Batch Datei liegt im betreffenden Ordner
2. Dateien werden einzeln nacheinander durch die Batch-Datei geöffnet und nach dem Kopieren geschlossen.
3. Das Script sucht sich die betreffende Zeile (34 oder 35 Zeile) anhand eines Schlüsselwortes "Reply-To:" heraus.
Beispiel Zeile >>> "Reply-To: Diese Emailadresse <Diese.Emailadresse@gmail.com>"
4. Das Script kopiert die betreffenden E-Mail Adresse Diese.Emailadresse@gmail.com aus der Datei heraus und kopiert sie nach einander Zeile für Zeile in eine lehre Datei LehreTextDatei.txt
Irgendwie denke ich falsch 8(
Ich benötige dringend Eure Hilfe und bin für jeden Tipp dankbar!
BatchDUMMI
Ich habe eine große Anzahl von E-Mails und möchte gern die E-Mail-Adressen aus der "Antworten an Zeile" sichern um anschließend die E-Mails aus Platzgründen zu entfernen.
Leider gibt es für meine Thunderbird Version 60.9.1 kein passendes PlugIn um es zu filtern.
Daher habe ich gedacht, ich speichere mir die Dateien Lokal in einem Ordner und filtere mir aus den eml-Dateien jeweils die E-Mail-Adresse aus der 34 oder 35 Zeile heraus, in eine Lehre Textdatei.
geplante Abläufe:
1. Batch Datei liegt im betreffenden Ordner
2. Dateien werden einzeln nacheinander durch die Batch-Datei geöffnet und nach dem Kopieren geschlossen.
3. Das Script sucht sich die betreffende Zeile (34 oder 35 Zeile) anhand eines Schlüsselwortes "Reply-To:" heraus.
Beispiel Zeile >>> "Reply-To: Diese Emailadresse <Diese.Emailadresse@gmail.com>"
4. Das Script kopiert die betreffenden E-Mail Adresse Diese.Emailadresse@gmail.com aus der Datei heraus und kopiert sie nach einander Zeile für Zeile in eine lehre Datei LehreTextDatei.txt
@echo off
for /f "delims=" %%i in (*.eml) do (
set zeile=%%i
set vergl=%zeile:~Reply-To:%
if "%Vergl%"=="???" echo %zeile%>>E-MAIL-LISTE.txt
)
Irgendwie denke ich falsch 8(
Ich benötige dringend Eure Hilfe und bin für jeden Tipp dankbar!
BatchDUMMI
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 666524
Url: https://administrator.de/forum/ein-teil-einer-zeile-34-oder-35-aus-vielen-eml-datei-kopieren-und-in-eine-txt-einfuegen-666524.html
Ausgedruckt am: 30.04.2025 um 07:04 Uhr
7 Kommentare
Neuester Kommentar

In Powershell nen einfacher Einzeiler
Geht auch in ner Batch
Gruß w.
Select-String 'D:\Messages\*.eml' -Pattern '^Reply-To:.*<([^>]+)' | %{$_.Matches.Groups[1].Value.trim()} | set-content emailliste.txt
Geht auch in ner Batch
@echo off
set "ordner=D:\Messages"
set "ausgabe=D:\E-MAIL-LISTE.txt"
powershell -EP Bypass -C "select-string '%ordner%\*.eml' -Pattern '^Reply-To:.*<([^>]+)' | %%{$_.Matches.Groups[1].Value.trim()} | set-content '%ausgabe%'"

Deine PowerShell ist zu alt, da ist mal ein Update fällig. Sls ist ein Alias für Select-String den gibt's in der alten PowerShell noch nicht.
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell. ...
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell. ...

Select-String statt sls benutzen oder besser gleich die PowerShell updaten 5.1 reicht s.o.