Não, o cron só sabe sobre o dia da semana, o dia do mês e o mês.
A execução de um comando duas vezes por mês em dias fixos (por exemplo, o primeiro e o décimo sexto) é fácil:
42 4 1,16 * * do_stuff
Executar um comando a cada duas semanas é outro assunto. O melhor que você pode fazer é executar um comando toda semana e fazer com que ele não faça nada a cada duas semanas. No Linux, você pode dividir o número de segundos desde a época ( date +%s
) pelo número de segundos em uma semana para obter um número que alterna a paridade toda semana. Note que em um crontab, %
precisa ser escapado (o cron transforma %
em novas linhas antes de executar o comando).
42 4 * * 1 case $(($(date +\%s) / (60*60*24*7))) in *[02468]) do_stuff;; esac