Wiem, jak to robić co minutę, ale co około 10 sekund?
15
Nie możesz zaplanować zadania co dziesięć sekund, ale przypuszczam, że możesz zaplanować uruchamianie zadania co minutę i spanie w pętli co 10 sekund. Będzie to zależało od tego, czy polecenie zostanie wykonane przed upływem dziesięciosekundowego interwału, w przeciwnym razie wystąpi nakładanie się, gdy uruchomione zostanie następne polecenie. Wydaje się to niepewnym rozwiązaniem, ale jeśli możesz zagwarantować bardzo krótkie wykonanie głównego polecenia skryptu, zadziałałoby.
#!/bin/bash
i=0
while [ $i -lt 6 ]; do
/run/your/command &
sleep 10
i=$(( i + 1 ))
done
W zeszłym tygodniu miałem podobne zadanie. Moim rozwiązaniem było pomnożenie standardowych wpisów cron do pożądanej częstotliwości. Mój crontab wygląda następująco:
Jeśli chcesz sprawdzić wyniki myscript.php, np. Do debugowania, po prostu dołącz
do każdej linii na powyższym crontabie. Następnie stderr i stdout zostają przekierowane do pliku dziennika.
źródło
Chciałbym użyć Monit i ustawić czas cyklu na 10 sekund. Jest to czysty sposób na zarządzanie tym poza systemem CRON.
Robię to z pewnymi skryptami, które muszą być uruchamiane co 15 sekund.
Zobacz: Jak wykonywać przyrostowe / ciągłe kopie zapasowe puli ZFS?
źródło
Cron pozwala na minimum jedną minutę. Możesz spróbować tego -
źródło
Jeśli chcesz przejść poniżej 10 sekund, np. 5 sekund, zalecam wykonanie pętli roboczej za pomocą takiego skryptu:
Jeśli potrzebujesz przejść poniżej sekundy, dodaj mikrosekundy do polecenia date.
źródło
Tutaj skrypt można uruchomić z interwencją 10 sekund ...
źródło