Ich lasse mir regelmäßig per Script Statusnachrichten senden.
Bisher habe ich das in mehreren Mails gemacht, was ich gerne zusammenfassen möchte.
Leider fällt mir kein Weg ein, die Ausgaben mehrerer Porgramme in einen mail-Aufruf zu sammeln, ohne über eine temporäre Datei zu gehen. Wisst ihr wie man das machen könnte?
Beispiel:
Die Ausgaben von "uptime" und "free" sollen per Mail versendet werden ohne eine temp-Datei auf der Platte ablegen zu müssen.
Ausgaben mehrere Scripte per E-mail versenden
Re: Ausgaben mehrere Scripte per E-mail versenden
Speichere dir doch den Output der Programme in Variablen:
Ergibt in der Mail:
Code: Select all
up=$(uptime)
free=$(free)
who=$(who)
echo -e "Uptime:n$upnnEingeloggte User:n$whonnSpeicher:n$free"
Code: Select all
Uptime:
13:42:27 up 79 days, 20:11, 1 user, load average: 0.00, 0.00, 0.00
Eingeloggte User:
root pts/0 Sep 20 13:39 (p4544465432.dip0.t-ipconnect.de)
Speicher:
total used free shared buffers cached
Mem: 248636 216952 31684 0 6912 163576
-/+ buffers/cache: 46464 202172
Swap: 512024 7252 504772
Re: Ausgaben mehrere Scripte per E-mail versenden
och nee, auf die einfachsten Sachen kommt man manchmal nicht ... danke.Thorsten wrote:Speichere dir doch den Output der Programme in Variablen:
Re: Ausgaben mehrere Scripte per E-mail versenden
ähm noch einfacher oder?
mach ein script (hier mal als beispiel mit den Namen test)
Inhalt
und rufe es. z.b. so auf
Ist die einfachste variante, da brauchst du keine Variablen ?
Ciao Christian
mach ein script (hier mal als beispiel mit den Namen test)
Inhalt
Code: Select all
#!/bin/sh
/usr/bin/uptime
/usr/bin/free
Code: Select all
./test | mail -s "Meine Statusmeldung" name@domain.tldCiao Christian
Re: Ausgaben mehrere Scripte per E-mail versenden
auch nicht schlecht. Ein Nachteil wäre aber, daß dann zwei Scripte rumliegen. Einmal das "test" und zusätzlich das Script in der cron.daily.chris76 wrote:ähm noch einfacher oder?
mach ein script (hier mal als beispiel mit den Namen test)
und rufe es. z.b. so auf
Ist die einfachste variante, da brauchst du keine Variablen ?Code: Select all
./test | mail -s "Meine Statusmeldung" name@domain.tld
Aber man könnte es natürlich auch direkt täglich in der crontab aufrufen.
Jetzt frage ich mich natürlich mal wieder was die elegantere Methode ist.
Re: Ausgaben mehrere Scripte per E-mail versenden
Das ganze muß ja nicht in der Cron.daily liegen, mach dir einfach mit crontab -e einen aufruf der es einaml täglich so startet.
Ciao Christian
Ciao Christian