subject per pipe an mail(x)?

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
r4pt0r
Beiträge: 1237
Registriert: 30.04.2007 13:32:44
Lizenz eigener Beiträge: MIT Lizenz

subject per pipe an mail(x)?

Beitrag von r4pt0r » 15.05.2014 09:26:30

Guten Morgen.

Ich überwache den Trafficverbrauch einer LTE-Anbindung per simplem cronjob-kommando:

wget --output-document=- http://center.vodafone.de/vfcenter/index.html | grep -o '[[:digit:]]*%' | mailx -v -s "lte traffic" ich@domain.tld


Ergebnis ist eine Mail mit Betreff "lte traffic" und als Inhalt nur "xx%".
Geht das verbrauchte Volumen über 90% kann/muss ich Zusatzvolumen manuell auf der selben Seite buchen (lässt sich nicht pauschal automatisch bei bedarf buchen :P).

So weit so gut - einmal am Tag bekomme ich die Mail mit dem aktuellen Trafficverbrauch. Praktischer wäre aber wenn der direkt im Subject stehen würde.

Lässt sich die pipe direkt in das -s "feld" stecken? Versuche mit "$1", "-" o.ä. brachten leider keinen Erfolg...

Danke!

Benutzeravatar
peschmae
Beiträge: 4844
Registriert: 07.01.2003 12:50:33
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: nirgendwo im irgendwo

Re: subject per pipe an mail(x)?

Beitrag von peschmae » 15.05.2014 10:47:44

Ich würde das Problem andersrum aufschreiben:

Code: Alles auswählen

mailx -v -s "lte traffic: $(wget --output-document=- http://center.vodafone.de/vfcenter/index.html | grep -o '[[:digit:]]*%' )" ich@domain.tld
Oder auch etwas aufgedröselt:

Code: Alles auswählen

traff=$(wget --output-document=- http://center.vodafone.de/vfcenter/index.html | grep -o '[[:digit:]]*%' )
mailx -v -s "lte traffic: $traff" ich@domain.tld
Der Befehl im $() wird von der shell ausgeführt und durch seinen Output ersetzt.

MfG Peschmä
"er hätte nicht in die usa ziehen dürfen - die versauen alles" -- Snoopy

r4pt0r
Beiträge: 1237
Registriert: 30.04.2007 13:32:44
Lizenz eigener Beiträge: MIT Lizenz

Re: subject per pipe an mail(x)?

Beitrag von r4pt0r » 15.05.2014 11:10:16

stimmt, so rum gehts natürlich :) hatte mich irgendwie auf die pipe versteift - wald und bäume... ;)

danke!


edit: ein echo ""| davor war noch nötig - leere mails nur mit subject mag mail(x) nicht verschicken...

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: subject per pipe an mail(x)?

Beitrag von Cae » 15.05.2014 21:21:30

r4pt0r hat geschrieben:edit: ein echo ""| davor war noch nötig - leere mails nur mit subject mag mail(x) nicht verschicken...
Oder /dev/null nehmen:

Code: Alles auswählen

$ mail user </dev/null
No message, no subject; hope that's ok
'Ne Mail geht da schon raus, aber sie ist halt leer.

Ansonsten sollte man auch per -t Empfaenger direkt als To: per stdin reinschieben duerfen, fuer Subject: hat das in meinen Test allerdings nicht funktioniert. Man koennte aber immer noch mit netcat einfach direkt mit dem MTA reden ;).

Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

r4pt0r
Beiträge: 1237
Registriert: 30.04.2007 13:32:44
Lizenz eigener Beiträge: MIT Lizenz

Re: subject per pipe an mail(x)?

Beitrag von r4pt0r » 15.05.2014 22:00:32

Ja, Varianten gäbe es noch einige ;)

Ich lasse jetzt aber doch noch etwas in die mail echo-en: Den direkten link zur Portalseite auf der die Trafficerweiterung gebucht werden kann. Erspart mir dann zukünftig das ewig lange suchen auf der Vodafone-Seite :mrgreen:

Antworten