2010-10-14 11 views

Odpowiedz

2

podjęciu pracy cron szukać flagą (pliku) pod /var/run, a następnie napisać skrypt init, który ustawia lub resetuje że flaga.

+1

ignacio ... jestem total unix noob .. może dać mi przykład skryptu. – Unixnewbie11

8

Ignacio sugerował coś takiego w swoim crontab:

31 1 * * * [ -f /var/run/cron-holiday ] || /usr/local/bin/whatever-command 

następnie na początku weekendu, jako root:

# touch /var/run/cron-holiday 

i poniedziałek:

# rm /var/run/cron-holiday 

To jest ładne i proste, ale ma tę wadę, że jeśli zapomnisz usunąć plik, twoje cronscripts będą nigdy więcej nie biegnij, co może być złe.

Alternatywą jest mieć plik wystawianie daty wakacji i zrobić coś takiego:

31 1 * * * grep -q `date -I` /etc/cron-holidays || whatever-command-here 

gdzie plik/etc/cron-Holidays zawiera linie jak

2011-04-01 
2011-12-25 

itp

+0

Czy plik musi zostać utworzony w "/ var/run /"? – TrueBlue10

+0

@ TrueBlue10, nie może być w dowolnym miejscu, na przykład w katalogu głównym lub nawet w rękach innego użytkownika. – poolie

Powiązane problemy