Есть несколько проблем с вашим сценарием, я изменил его ниже, внимательно обратите внимание на изменение пробелов, написание date
и замену |
на ;
.
Однако самая интересная проблема заключается в том, что mail
, к сожалению, не может отправлять вложения. Вы можете использовать uuencode для встраивания файла в почту, используя:
15 2 * * * root mysqldump -uroot -pPASSWORD --all-databases | gzip > /database_`date +'%m-%d-%Y'`.sql.gz ; uuencode /database_`date +'%m-%d-%Y'`.sql.gz /dev/stdout | mail -s "Report 05/06/07" user@domain.com
Или, если вы хотите правильно использовать вложение MIME (вам понадобится установленный MetaMail):
15 2 * * * root mysqldump -uroot -pPASSWORD --all-databases | gzip > /database_`date +'%m-%d-%Y'`.sql.gz ; metasend -b -t user@domain.com -s "Report 05/06/07" -m application/gzip -f /database_`date +'%m-%d-%Y'`.sql.gz
Или как указано выше с установленным mpack вместо MetaMail:
15 2 * * * root mysqldump -uroot -pPASSWORD --all-databases | gzip > /database_`date +'%m-%d-%Y'`.sql.gz ; mpack -s "Report 05/06/07" -c application/gzip /database_`date +'%m-%d-%Y'`.sql.gz user@domain.com