Que tal usar a função date na chamada?
16 3 * * * mysqldump filename > /var/backups/b-'date +%A'/filename.sql
Eu gerencio um servidor relativamente simples com alguns sites que mantenho.
Eu configurei um crontab para despejar o mysql e zipar o PHP diariamente. Rodando ao longo de uma semana eu tenho 7 incrementos de tudo o que está acontecendo. Eu então uso o mesmo crontab para copiá-los do servidor para outro.
Usando o bit mysql como exemplo, tenho
16 3 * * tue mysqldump filename > /var/backups/b-Tuesday/filename.sql
16 3 * * wed mysqldump filename > /var/backups/b-Wednesday/filename.sql
[etc]
Isso se repete para o PHP ser compactado para cada um dos sites e novamente para a parte scp do processo.
Existe uma maneira de ter um trabalho diário para cada site que saiba salvá-lo na pasta de backup do dia em vez de ter 7 trabalhos para cada coisa que eu estou fazendo backup?
Tente um script de shell como este:
#!/bin/bash
/usr/bin/mysqldump filename | /usr/bin/bzip2 -c > /var/backups/b-'date +%A'/filename.sql.bup.bz2
Isso é semelhante ao que está em meu /etc/cron.daily/, mas com alterações para seus caminhos. Eu continuo querendo fazer mais com isso, mas funciona e os backups são muito bem compactados também!
Meu formato de data é, na verdade, date +%Y%m%d
para fornecer mais informações, mas guardo os backups por mais de sete dias.
Como alternativa, o comando logrotate tratará de compactar, renomear (com datas), remoção, etc. de arquivos gerados todos os dias. Você poderia chamar seus comandos de despejo todos os dias e chamar logrotate uma vez por dia também. O arquivo de configuração logrotate permite especificar quais arquivos devem ser rotacionados e o que fazer com eles.
Para uma solução rápida e viável, o local de Brent com o uso da data.
Dependendo da necessidade e do desejo de flexibilidade futura, posso considerar lançar os backups em um script de shell. Dessa forma, você pode usar a mesma base de código para diário, semanal, por hora ou qualquer outra coisa. Você também ganha o benefício do registro de erros e relatórios (se é de valor).
Relacionado de maneira tangencial, o rsnapshot gerenciará rotações de backup por hora, diárias, semanais e mensais para você. Ele usa uma combinação inteligente de rsync e hard links para fazer backups.