お知らせメールを定期的に3日前に送れるようなアルゴリズムを教えて欲しいです。
例えばMYSQLにある12月1日に完成させなくてはならないマスタを3日前になっても完成しないとメールを自動送信するプログラムをshellで書きたいです。
ちなみに何日前のプログラムはprofileを読み込んで実行したいです。
ちなみにshellはcentos6.4です。
大変分かりづらいと思うのですが、分かる方ご回答お願いします。
書いたshell script
sendmail.sh
#!/bin/sh
sum_date=date -d "-3 days" +%Y-%m-%d
sum_date_from="$sum_date 00:00:00"
sum_date_to="$sum_date
dir=dirname $0
for sql_file in ls $dir/*.sql
do
sql=cat $sql_file | sed -e "s/SUM_DATE_FROM/$sum_date_from/" | sed -e "s/SUM_DATE_TO/$sum_date_to/"
result=mysql -h mysql_host -u mysql_user -pmysql_password -D database_name --default-character-set utf8 -e"$sql" 2>/dev/null
content="$content\n\n$result"
done
echo -e "$content" | mail -s "Subject $sum_date" "hoge@hoge.com"
回答2件
あなたの回答
tips
プレビュー