Der folgende Befehl funktioniert von der Eingabeaufforderung aus, jedoch nicht von crontab.
grep abc /var/log/messages | grep "`date '+%B %d'`" | mail -s"abc log of `hostname`" shantanu.oak+`hostname`@gmail.com
Ich muss es täglich cron hinzufügen.
Antworten:
Sie müssen den
%
Zeichen entkommen . Sie haben in Crontabs eine besondere Bedeutung:quelle
date +%F
und kam nicht weiterSHELL=/bin/bash
, ich kann immer neu schreiben ,cat %Hello world
wiecat <<<'Hello world'
. Ich sehe keine Notwendigkeit für eine spezielle Syntax.Dies beantwortet Ihre Frage nicht direkt, aber ich würde vorschlagen, dass Sie eine Skriptdatei in / usr / local / bin (oder ~ / bin oder was auch immer angebracht ist) erstellen und dies von cron aus aufrufen. Es ist einfacher zu testen und zu bearbeiten.
quelle