Respuesta
Modifique su lógica cron de martes para ejecutar cada dos semanas desde la época .
Sabiendo que hay 604800 segundos en una semana (ignorando los cambios de horario de verano y los segundos bisiestos, gracias) y usando la fecha GNU:
0 6 * * Tue expr `date +\%s` / 604800 \% 2 >/dev/null || /scripts/fortnightly.sh
Aparte
La aritmética del calendario es frustrante.
La respuesta de @xahtep es excelente pero, como señaló @Doppelganger en los comentarios, fallará en ciertos límites de año. Ninguno de los date
Los especificadores de "semana del año" de la utilidad pueden ayudar aquí. Algún martes a principios de enero inevitablemente repetirá la paridad semanal del último martes del año anterior:2016-01-05 (%V), 2018-01-02 (%U) y 2019-01-01 (%W) .
la respuesta de pilcrow es genial. Sin embargo, da como resultado que el script quincenal.sh se ejecute cada even semana (desde la época). Si necesita que el script se ejecute en impar semanas, puedes modificar un poco su respuesta:
0 6 * * Tue expr \( `date +\%s` / 604800 + 1 \) \% 2 > /dev/null || /scripts/fortnightly.sh
Cambiar el 1 a 0 lo moverá de nuevo a las semanas pares.
¿Qué tal esto? Lo mantiene en el crontab
incluso si no está exactamente definido en los primeros cinco campos:
0 6 * * Tue expr `date +\%W` \% 2 > /dev/null || /scripts/fortnightly.sh