Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Mail aus shell Script versenden. Mit HTML Body und Attachment.

Frage Linux Linux Tools

Mitglied: Pollekowski

Pollekowski (Level 1) - Jetzt verbinden

21.04.2010 um 14:24 Uhr, 8557 Aufrufe, 4 Kommentare

Mail aus Script versenden. Portable Konfiguration!

Hallo,

Ich suche ein Programm / Script um aus der Shell über SMTP eine Email versenden zu lassen.
Das kniffelige ist, dass sie einen HTML Body und ein Attachment haben muss.

Damit scheidet Telnet / NetCat ja schonmal aus.

Am vielversprechendsten sah bisher sendEmail aus.

01.
sendEmail -f nagios@domain1.com -t sp@domain2.de -u subject test -s mail.domain2.de:25 -a Logfiles/21_04_2010/10.108.0.254.txt -o message-file=tmp/10.108.0.254.html -o message-charset=utf8
Nur leider schreibt sendEmail den Inhalt des HTML als Text in den Body und entfernt die Zeilennumbrüche aus meinem txt File.

Hat jemand ne Idee wie man das sonst noch lösen könnte?

PS.: System Debian Lenny / Script soll portabel sein. Also am besten OHNE tiefgreifende Config des Systems. Am besten nur im Script.

Gruss & Dank Pollekowski
Mitglied: laster
21.04.2010 um 15:42 Uhr
Hallo Pollekowski,

ich kenne das Tool sendEmail nicht, aber kannst Du die HTML-Datei nicht als Anhang ranhängen?
Ansonsten sieht eine HTML-Mail beispielsweise wie folgt aus:
01.
... 
02.
MIME-Version: 1.0 
03.
Content-Type: text/html 
04.
 
05.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
06.
<html> 
07.
...
Der Content-Type (im Mail Body) ist nötig.

vG
LS
Bitte warten ..
Mitglied: Pollekowski
21.04.2010 um 15:49 Uhr
Nach etwas hin und her hab ich nun herausgefunden, dass sendEmail (http://caspian.dotconf.net/menu/Software/SendEmail/) seit Version 1.56 (Sep 8, 2009) in der Lage ist HTML Body zu erkennen und zu verschicken.

Mir ist nur aufgefallen, dass es mein HTML nicht korrekt überträgt. Es macht aus
01.
.orange { 
02.
font-family: Arial, Helvetica, sans-serif; 
03.
font-size: 14px; 
04.
color: #FF9900; 
05.
}
folgendes:
01.
orange { 
02.
font-family: Arial, Helvetica, sans-serif; 
03.
font-size: 14px; 
04.
color: #FF9900; 
05.
}
Einfach zu beheben durch "..orange" im zu versendenden Template. Dann überträgt er ".orange"

Jetzt bleibt noch das Problem, dass sendEmail aus meinem Anhang die Zeilenumbrüche entfernt.

Es macht aus:
01.
11:31:00 52.9 ms 
02.
11:31:10 52.8 ms 
03.
11:31:20 52.4 ms 
04.
11:31:30 61.4 ms 
05.
11:31:41 52.9 ms
folgendes

01.
11:31:00 52.9 ms11:31:10 52.8 ms11:31:20 52.4 ms11:31:30 61.4 ms11:31:41 52.9 ms
Hat dafür vielleicht jemand ne Idee?
Bitte warten ..
Mitglied: Pollekowski
21.04.2010 um 18:55 Uhr
Also... Lösung des Problems war, das Unix und DOS unterschiedlich mit txt Files umgehen.

Windows macht am Ende der Zeile für jeden Zeilenumbruch ein "carriage return" UND ein "line feed". Unix aber nur ein "line feed".
So sind also die Zeilenumbrüche verschwunden.

Lösung um sie dennoch in beiden Welten lesen zu können ist ein unix2dos (oder dos2unix) converter.

In meinem Fall wandle ich die Datei vor dem Versand mit "unix2dos 10.108.0.254.txt" in ein windows kompatibles Format und schon klappts.
Bitte warten ..
Mitglied: dog
21.04.2010 um 19:26 Uhr
Und damit hast du zwei Grundregeln von SMTP entdeckt:

  • Alle Line-Endings müssen CRLF sein
  • . als Beginn einer Zeile ist der DATA-Termination-Character und muss verdoppelt werden um ihn zu escapen

Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Batch E-Mail Body aus txt lesen und einfügen (9)

Frage von pdiddo zum Thema Batch & Shell ...

HTML
gelöst Zelle aus Excel in HTML-Datei einer E-Mail darstellen (3)

Frage von Sil3nz3r zum Thema HTML ...

VB for Applications
VBS Script zum versenden mehrerer Verknüpfungen zu Dateien per Lotus Notes

Frage von Sentinel87 zum Thema VB for Applications ...

Neue Wissensbeiträge
Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Router & Routing

PfSense auf Supermicro Intel Xeon D-15x8 SoC Bare Bone

Tipp von Dobby zum Thema Router & Routing ...

Windows Server

Exchange 2010 auf Windows Server 2016 und AD

(2)

Tipp von Herbrich19 zum Thema Windows Server ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
Brauche Hilfe: Mit (schnellem) WLAN Strecke überbrücken (22)

Frage von pierrehansen zum Thema LAN, WAN, Wireless ...

Windows 10
Windows für Privatanwender "nicht mehr handhabbar" (20)

Frage von FA-jka zum Thema Windows 10 ...

Basic
Programmierung von Windows Programmen (10)

Frage von Ghost108 zum Thema Basic ...