2017-10-05 2 views
0

Ich versuche, E-Mail mit dem sendmail-Dienstprogramm in Unix AIX zu senden. Wennnicht cat Dateien von crontab - cat: 0652-050 - Unix AIX

Mailheader:

To: [email protected] 
From: [email protected] 
MIME-Version: 1.0 
Content-Type: text/html; charset=us-ascii 
Subject: Alert 

status.hmtl -> enthält gespult html Bericht eine db Abfrage mit

(cat ./mailheader ./status.html) | sendmail -t

Wenn ich versuche, aus einer den obigen Befehl von einem Shell-Skript zu verwenden Crontab Registerkarte Ich bekomme unter Nachricht im Protokoll:

cat: 0652-050 Kann ./mailheader nicht öffnen. cat: 0652-050 Kann ./status.html nicht öffnen.

Aber die Shell-Skripts läuft perfekt, wenn ich es manuell ausführen.

Bitte lassen Sie mich Ihre Meinung wissen

+0

führt Ihr 'cron'-Skript chdir in das entsprechende Verzeichnis? –

+0

Anscheinend habe ich diesen einen vermisst. Dies ist jetzt gelöst. Vielen Dank – Sathya

Antwort

0

Verwenden absolute Pfade wie

(cat /there/mailheader /there/status.html) | sendmail -t 

Oder cd

cd /somepath 
(cat mailheader status.html) | sendmail -t 

Vor allem aber, debug verwenden. Fügen Sie diese Zeilen in Ihr Skript ein:

1

Ich habe das Verzeichnis nicht von crontab geändert und daher bekam ich den Fehler.

verwendet absolute Pfade und debuggen, um das Problem herauszufinden und cd am Anfang meines Skripts hinzugefügt, um das Problem zu lösen.