Diğer pazar günleri cron'u her Pazar günü nasıl çalıştırabilirim?


10

0 0 * * 0/2 - yani her Pazar günü çalışan bir cron işim var. Mesela şimdi koştu. Ancak, diğer Pazar günleri - önümüzdeki Pazar, bunun yerine çalıştırmak istiyorum . Başka bir deyişle: Yılın çift sayılı Pazarları üzerinde çalıştığını düşünüyorum, ama tek sayılı Pazar günleri çalışmasını istiyorum.

Ben "adam 5 crontab" bu konuda bana yardımcı olacak bir şey görmüyorum, bu yüzden 0 0 * * 0 cronjob çalıştırmak için geri düşmek ve sonra hangi Pazar günü kontrol etmek için koşmak çalıştırmak için bir şey yapmak varsayalım dır-dir. Herkes bana bunun için uygun bir komut satırı hile yardımcı olabilir?

ETA: 0 / 2'imin aslında düşündüğüm şeyi (her iki Pazar günü) yapmadığını fark ettim. Haftanın o günü ikiye bölünebilir olduğu sürece her Pazar çalışır, tabii ki öyle. D'oh. Her neyse, temel gereksinim var: tek numaralı pazar günleri bir komut çalıştırın.


"Birinci, Üçüncü ve Beşinci Pazar" da olduğu gibi "tek sayılı" mı?
voretaq7

1
Hayır, yılın 1., 3., 5., 7., ... 49., 51. haftasında olduğu gibi. Diğer bir deyişle, iki haftada bir, yılın tek sayılı haftalarında düşen Pazar günleri.
Skud

Üzgünüm - cron bunu senin için yapmayacak. Senaryonuzun sizin için doğru hafta olup olmadığını kontrol etmesini sağlamanız gerekir. (Ayrıca, beni belirli bir yerden hatırlarsanız - HI !!! dalgalar )
Jenny D

Yanıtlar:


3

Bu özel görevi kendim denemiş gibi davranmayacağım, ancak bu Yığın Taşması sorusunun potansiyel komut satırı hile gösteren bazı cevapları var: /programming/350047/how-to-instruct-cron-to- yürütmek-a-iş-her-saniye haftalık


Bunların hiçbiri tek sayılı haftalarda cron çalıştırmaz. Hepsi sadece birbirlerini yaparlar. Bazıları da son derece egzotik ve "yaratıcı" ya da ben tavsiye etmem.
Chris S

En çok oy alan cevap her hafta çalışıyor ve uygun hafta olup olmadığını belirlemek için komut satırı hilesine güveniyor.
nmjk

1
Evet, ama modulo 2, yani çift sayılı haftalarda çalışacak. Bir evaltane eklemek için birden fazla blok yığınlamak ve sonra modulo 2 yapmak mümkün olabilir . Bu en çirkin, ama sanırım işe yarayabilir.
Chris S

1
Bağlantılı cevaptan, bu potansiyele sahip gibi görünüyor: date +\%W\% 2> / dev / null || her neyse ... Ancak, tek numaralı haftaları almak için , yerine "&& neyse" yapmak istiyorum ||
Skud

1
Yani, açıklama istiyoruz. "Her tek hafta" yı yıl haftasına göre mi yoksa ay haftasına göre mi saymak istiyorsunuz? Eminim ki ikincisi mümkün ama geçmişte kullandığım bazı eski parçacıkları bulmak zorundayım.
nmjk
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.