Extrahieren/Speichern eines E-Mail-Anhangs mit bash

Mit normalen bash Tools (dh integrierten oder allgemein verfügbaren Befehlszeilentools), ist es

  • möglich, und
  • , wie

Zum Extrahieren/Speichern von Anhängen auf E-Mails?

Angenommen, ich habe einen nächtlichen Bericht, der per E-Mail eintrifft, aber ein Zip-Archiv mit mehreren Protokolldateien ist. Ich möchte all diese Reißverschlüsse in einem Sicherungsverzeichnis speichern. Wie würde ich das erreichen?
Author: warren, 2010-09-10

3 answers

Wenn Sie Portabilität anstreben, beachten Sie, dass es verschiedene Versionen von mail(1) und mailx(1) gibt. Es gibt einen POSIX - mailx - Befehl, aber mit sehr wenigen Anforderungen. Und keine der Implementierungen, die ich habe, scheint Anhänge trotzdem zu analysieren.

Möglicherweise haben Sie das mpack-Paket. Der Befehl munpack speichert alle Teile einer MIME-Nachricht in separaten Dateien, dann müssen Sie nur die interessanten Teile speichern und den Rest bereinigen.

Es gibt auch metamail. Ein Äquivalent von munpack ist metamail -wy.

 34
Author: Gilles 'SO- stop being evil',
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2010-09-10 19:31:28

Das beste Programm für diesen Zweck ist ripMIME.

Es extrahiert den Text und alle Anhänge:

Https://pldaniels.com/ripmime/

GitHub: inflex/ripMIME

 16
Author: Andreas Rehm,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-11-09 22:29:03
  • JA möglich

  • Dies ist WIE (Ressource von hier)

Finden, der dir mit Dateien | while read file; do

Erstellen Sie tempdir und kopieren Sie die Datei dort

Run munpack auf Datei und kopieren Sie Anhänge woanders

Zerstören tempdir (Inhalt)

Fertig

 2
Author: subanki,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2010-09-10 18:02:50