Mam zadanie crona, które działa na 0 0 * * 0/2 - tj. Co drugą niedzielę. Na przykład właśnie teraz działało. Chcę jednak, aby działało w inne niedziele - w następną niedzielę, a nie w tę. Innymi słowy: zakładam, że działa w niedzielne parzyste niedziele roku, ale chcę, aby działało w niedzielne parzyste niedziele.
W „man 5 crontab” nie widzę nic, co pomogłoby mi w tym, więc zakładam, że muszę wrócić do pracy z cronjobem na 0 0 * * 0, a następnie zrobić coś w poleceniu, które uruchamiam, aby sprawdzić, która niedziela to jest. Czy ktoś może mi pomóc z jakąś odpowiednią sztuczką z linii poleceń?
ETA: zdałem sobie sprawę, że moje 0/2 wcale nie robi tego, co pierwotnie myślałem (co drugą niedzielę). Biegnie w każdą niedzielę, o ile ten dzień tygodnia jest podzielny przez dwa, co oczywiście jest. Nie. Tak czy inaczej, podstawowe wymaganie pozostaje: uruchomić polecenie w niedzielę o nieparzystych numerach.
Odpowiedzi:
Nie będę udawał, że sam podejmowałem się tego konkretnego zadania, ale to pytanie dotyczące przepełnienia stosu zawiera kilka odpowiedzi, które pokazują potencjalną sztuczkę z linii poleceń: /programming/350047/how-to-instruct-cron-to- wykonać zadanie co drugi tydzień
źródło
eval
bloków w celu dodania jednego, a następnie wykonanie modułu 2. To brzydkie co najwyżej, ale przypuszczam, że może działać.date +\%W
\% 2> / dev / null || cokolwiek ... Jednak aby uzyskać nieparzyste tygodnie, chciałbym zrobić „&& cokolwiek” zamiast ||