[SCRIPT] sendmail - Komfortabel aus der CLI mailen

  • [NAS Typ:] bedingt alle
    [Firmware:] (ab 2.0.0)
    [Getestet:] ja
    [Sonstige Modifikationen:] keine
    [Autor:] Terz - David


    Dieses Script ermöglicht es komfortabel aus der CLI aus zu mailen.


    Konfiguriert wird es durch die ersten 4 Variablen:
    DEF_SUBJECT=,
    DEF_FROM=,
    DEF_TO=,
    DEF_TEXT=


    Mit den Parametern -s,f,t,c werden die vordefinierten Variablen wieder überschrieben.


    Shell-Script
    1. #!/bin/sh# CONFIGURE DEFAULT SETTINGS HEREDEF_SUBJECT="I am the Subject"DEF_FROM="mymail@domain.tld"DEF_TO="mail@domain.tld"DEF_TEXT="This text"usage(){cat << EOFusage: $0 optionsNote: PARAMS OVERWRITE DEFAULT SETTINGS!OPTIONS: -h Show this message -s Subject -f From -t To -c TextEOF}while getopts "h:s:f:t:c:?" OPTIONdo case $OPTION in h) usage exit 1 ;; s) DEF_SUBJECT=$OPTARG ;; f) DEF_FROM=$OPTARG ;; t) DEF_TO=$OPTARG ;; c) DEF_TEXT=$OPTARG ;; ?) usage exit 1 ;; esacdoneMAILFILE=/tmp/mail.txtecho "Subject: $DEF_SUBJECT" > $MAILFILEecho "From: $DEF_FROM" >> $MAILFILEecho "To: $DEF_TO" >> $MAILFILEecho "" >> $MAILFILEecho "$DEF_TEXT" >> $MAILFILEcat $MAILFILE | sendmail -t


    Der Aufruf:

    Code
    1. script.sh


    Das würde schon reichen, um eine Mail mit den vordefinieren Variablen aus der CLI heraus zu senden.


    Hier noch ein weiterer Aufruf, der in diesem fall den Textinhalt und den Betreff ändern würde.

    Code
    1. script.sh -c "Ich bin ein Text" -s "Ich bin der Betreff"