Przejdź do głównej zawartości

at


  • at – narzędzie systemowe służące do jednorazowego planowania zadań, które mają zostać wykonane w określonym czasie w przyszłości.
  • Idealne do opóźnionego uruchamiania skryptów, powiadomień lub zadań administracyjnych.
  • Dostępne w większości dystrybucji Linux, jednak może wymagać instalacji (at lub atd) oraz uruchomienia odpowiedniego demona.

Okno terminala
at [czas] [opcje]
  • Po uruchomieniu otwiera interfejs wiersza poleceń, do którego wpisujemy komendy.
  • Kończymy wpisywanie za pomocą Ctrl + D.
  • Czas można podać w różnych formatach: now + 1 hour, 12:30, midnight, tomorrow.

ParametrOpis
<czas>Określa moment uruchomienia zadania (np. now + 10 minutes, 3pm tomorrow).
-f <plik>Wskazuje plik zawierający komendy do wykonania.
-mWysyła maila z wynikami, nawet jeśli nie ma wyjścia.
-q <kolejka>Przypisuje zadanie do określonej kolejki (domyślnie „a”).
-VWyświetla wersję polecenia.

Okno terminala
# Przykład 1: Uruchomienie skryptu po 5 minutach
at now + 5 minutes
/home/user/skrypt.sh
Ctrl + D
# Przykład 2: Zaplanowanie zadania z pliku
at -f zadanie.sh 23:00
# Przykład 3: Ustawienie zadania na jutro o 8:00
at 8:00 AM tomorrow
# Przykład 4: Lista zaplanowanych zadań
atq

  • Demon atd: komenda at wymaga aktywnego demona atd. Uruchom: sudo systemctl start atd.
  • Uprawnienia: tylko użytkownicy wymienieni w /etc/at.allow (lub nieujęci w at.deny) mogą planować zadania.
  • Wyjście komend: domyślnie wynik komend jest przesyłany e-mailem do użytkownika systemowego.
  • Alternatywy: dla zadań cyklicznych użyj cron.

Błąd / KomunikatPrzyczynaRozwiązanie
Can't open /var/spool/atjobsBrak aktywnego demona atdUruchom sudo systemctl start atd.
Garbled timeBłędna składnia czasuUżyj formatu zgodnego z man at, np. now + 10 minutes.
You do not have permission to use atBrak uprawnieńSprawdź zawartość /etc/at.allow i /etc/at.deny.