簡體   English   中英

sendmail在crontab中不起作用

[英]sendmail not working in crontab

當我嘗試從crontab執行腳本時遇到了問題,但是當我嘗試手動執行時,它可以很好地工作。

Crontab文件

54 * * * * /opt/SP/home/osbadm/scripts/tmp1.sh 2>&1 

Sendmail功能

SUBJECT="test"
TO="to@gmail.com" (
echo "TO: $TO"
echo "MIME-Version: 1.0"
echo "Subject: $SUBJECT"
echo "Content-Type: text/html"
cat $EXTRACT_CST_HTML
) | /usr/sbin/sendmail -f from@gmail.com $TO

誰能幫我一下。

您不能將變量賦值放在(會啟動子shell的(之前。如果將腳本粘貼到shellcheck.net中 ,它將告訴您:

SC1036:“(”在這里無效。您是否忘記了對其進行轉義?

同樣,即使可以,它只會在子進程的環境中設置變量,在處理sendmail的參數時將不可見。 因此,將該任務放在自己的行上。 另外,here-doc是將多行輸入傳遞到sendmail的更簡便方法。

TO="to@gmail.com"
(
echo "TO: $TO"
echo "MIME-Version: 1.0"
echo "Subject: $SUBJECT"
echo "Content-Type: text/html"
cat $EXTRACT_CST_HTML
) | /usr/sbin/sendmail -f from@gmail.com $TO

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM