2017-10-05 107 views
0

我正嘗試使用unix AIX中的sendmail實用程序發送電子郵件。當無法從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 - >包含HTML報告使用DB查詢

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

當我嘗試從一個shell腳本中使用上面的命令後臺crontab標籤我在日誌中得到以下消息:

cat:0652-050無法打開./mailheader。 cat:0652-050無法打開./status.html。

但是,當我手動運行它時,shell腳本運行完美。

請讓我知道你的想法

+0

是否將您的'cron'腳本chdir放入相應的目錄? –

+0

顯然我錯過了這一個。現在已經解決了。謝謝 – Sathya

回答

0

使用絕對路徑,像

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

或者使用cd

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

但首先,調試。將這些行添加到腳本中:

set -xv 
exec >>/tmp/debug.$$ 2>&1 
date 
pwd 
id -a 
env 
1

我沒有從crontab更改目錄,因此我得到了錯誤信息。

使用絕對路徑和調試來找出問題,並在我的腳本開始時添加cd來解決問題。