Czy istnieje narzędzie takie jak cron, które planuje zadanie na później (ale tylko raz)?

19

Próbuję zaprojektować program, który wysyła tekst, gdy wystąpi określone (nieokresowe) zdarzenie. W tej chwili chciałbym skryptu, który wykryje, kiedy wystąpi to zdarzenie, a następnie zaplanuje (podobne do crona) zadanie, które wyśle ​​tekst tuż przed jego wystąpieniem.

Bardziej konkretny przykład mógłby wyglądać następująco:

  1. Skrypt A uruchamia się i wykrywa następne zdarzenie

  2. Skrypt A używa ??? zaplanować uruchomienie skryptu B o godzinie $

  3. W czasie $ ??? wywołuje skrypt B, który wysyła tekst.

Problem polega na tym, że zdarzenie może nastąpić losowo w ciągu 11 dni i dzieje się to tylko raz. Cron wydaje się do tego nieodpowiedni - nie chcę, aby ta praca była uruchamiana więcej niż raz.

Myślę, że (w skrócie), czy istnieje narzędzie, które zapewnia opóźnione wykonywanie skryptu, który nie jest okresowy?

użytkownik1209326
źródło

Odpowiedzi:

38

Tak. Nazywa się .

Przykład:

echo 'logrotate -f /etc/logrotate.conf' | at '00:00'
Tometzky
źródło
7

Jeśli masz już skrypt w pliku, at -f scriptname '00:00'jest to również przydatne.

Paul Gear
źródło