2016-09-22 8 views
0

crontab上で実行が変更された場合、私のメールに新しいIPアドレスを送信するこのbashスクリプトがあります。メールがbashで正常に送信されているかどうか確認してください。

SUBJ="My new IP is " 
EMAIL="[email protected]" 

ip1="" 
ip2="" 

read ip1 < ip.txt 
ip2=$(wget -qO- ifconfig.me/ip) 

if [ "$ip1" = "$ip2" ] 
then 
    exit 
else 
    echo "$ip2" > ip.txt 
    echo "$ip2" | mail -s "$SUBJ""$ip2" $EMAIL 
    exit 
fi 

問題は、何らかの理由でメールが送信されなかった場合、ip.textファイルがまだ変わってしまうということで、スクリプトが"$ip1" = "$ip2"を実行することを次回は真で、決して電子メールを送信します。

メールが正常に送信されたかどうかを確認するにはどうすればよいですか?

私はthis tutorialを追っ:

答えて

0

あなただけmailプログラムが正常に実行されたことを確認したい場合は、あなたが実際に成功しmailを配信されることに送信したメールを気にしている場合

echo "$ip2" | mail -s "$SUBJ $ip2" && echo "$ip2" > ip.txt 

を使用あなたの地元の郵便振替代理店、あなたができることはあまりありません。

関連する問題