Сценарий, который использует запрос MySQL для автоматического удаления вывода

У меня есть этот запрос, который выводит обновления более 7 дней из базы данных. Как я могу сделать скрипт, который принимает оператор MySQL и помещает его в скрипт, который будет выполняться cron.

echo "select name, reported_at from nodes where reported_at < curdate() -7;" | mysql dashboard 

Пример вывода:

 name reported_at xadf.edu 2012-03-21 14:39:02 xadf.edu 2012-03-22 15:30:01 adsfsadf.edu 2012-03-14 14:40:02 ekdahlj.edu 2012-03-23 03:40:04 adfasdf.net 2012-03-21 14:42:02 eqrsdr.edu 2012-03-15 14:42:02 qwerwfva.edu 2012-03-13 14:42:03 qerqwer.edu 2012-03-23 14:40:01 adfasde.edu 2012-03-05 17:42:03 bsfdgs.edu 2012-03-23 15:20:01 adfadsf.edu 2012-03-23 14:43:01 

Вы можете создать файл ~ / путь / в / myquery.sql :

 select name, reported_at from nodes where reported_at < curdate() -7; 

И чтобы отредактировать выполнение crontab

 crontab -e 

И в вашем crontab добавьте строку

 * * * * * mysql dashboard < ~/path/to/myquery.sql > ~/path/to/query/output 

Чтобы отредактировать, как часто эта команда запускается, вам нужно отредактировать пять * в начале этой строки. Чтобы понять, как это сделать, вы можете проверить эту страницу .

Просто сохраните его в файле, а затем перенаправьте его в инструмент mysql в вашем crontab.

 * * * * * mysql ... < savedstatements.sql