Soluzione 1:
0 8 * * 6 test $((10#$(date +\%W)\%2)) -eq 1 && yourCommand
date +%W
:numero della settimana dell'anno con lunedì come primo giorno della settimana, oggi settimana 39
10#$(date +%W)
:converte il date +W
al numero decimale ed evitare confusione nell'analisi della base della shell
$((39%2))
:operazione modulo:il risultato è 0 (numero della settimana pari) o 1 (numero della settimana dispari), il risultato di questa settimana è 1, la prossima settimana 0
test 1 -eq 1
:test aritmetico (uguale), in questo caso il risultato è boolean true
&& yourCommand
:booleano AND:esegui yourCommand
solo se il risultato del comando precedente era boolean true
Nota che l'anno può avere due settimane dispari:53 (quest'anno) e 1 (il prossimo anno)
Soluzione 2:
Quello che hai mostrato è "ogni settimana". Quindi il codice è:
0 8 * * 6
Sei sicuro di doverlo eseguire ogni due settimane?
0 8 * * 6 expr `date +\%s` / 604800 \% 2 >/dev/null || yourCommand