at (Unix)

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania

at – komenda systemów z rodziny Uniksa używana do ustawienia wykonania jakiegoś polecenia o zadanej godzinie w przyszłości.

crontab - tabela programu cron posiadająca specjalny format oraz nazwa programu służącego do jej edycji. Etymologia nazwy odnosi się do języka greckiego (χρόνος [czyt. chronos] - znaczy czas).W systemach Unix oraz w systemach uniksopodobnych polecenia są często programami uruchamianymi z wiersza poleceń powłoki systemowej. Często różne powłoki mają dodatkowo wbudowane własne implementacje niektórych poleceń; np. zawierają wersję polecenia dostępnego jako /bin/echo. To, która wersja polecenia będzie wykonana domyślnie zależy od tego, która powłoka jest używana oraz od konfiguracji systemu. Podstawową powłoką większości systemów Unix jest Bourne shell dostępna zwykle jako /bin/sh lub /usr/bin/sh, jednak częściej w pracy interaktywnej używa się wywodzących się z niej, bardziej rozbudowanych powłok takich jak bash, Korn shell, Z shell, czy też spokrewnionych C shell i tcsh, z nowszych popularność zyskuje fish. Większość powłok może być także używana jako języki skryptowe, co pozwala użytkownikowi na wykonywanie rozbudowanych poleceń wykorzystujących wiele programów oraz pisanie skryptów automatyzujących często wykonywane czynności. Za pomocą mechanizmów potoków i kolejek można w łatwy sposób przekazywać dane pomiędzy wieloma programami tworząc z nich bardziej skomplikowane narzędzia.

at pobiera ze standardowego wejścia listę poleceń i grupuje je w pojedyncze zadanie (ang. at-job), które zostaje wykonane o zadanym czasie. Po wykonaniu żądanej sekwencji poleceń at może wysłać poprzez e-mail powiadomienie, do użytkownika który operację zlecił. Listę poleceń do wykonania można wczytać z pliku zamiast standardowego wejścia.

man – narzędzie do wyświetlania stron pomocy man, stosowane w systemach Unix i uniksopodobnych. Nazwa jest skrótem od ang. Manual – instrukcja obsługi.Poczta elektroniczna lub krótko e-poczta, (ang. electronic mail krótko e-mail) – usługa internetowa, w nomenklaturze prawnej określana zwrotem świadczenie usług drogą elektroniczną, służąca do przesyłania wiadomości tekstowych, tzw. listów elektronicznych – stąd zwyczajowa nazwa tej usługi.

at używa daemona atd, który cyklicznie sprawdza listę zadań, wykonując je o oznaczonym czasie. Demon ten może być tak skonfigurowany, aby wykonywał zaplanowane zadania, tylko gdy obciążenie systemu (mierzone jako load average) jest nie wyższe niż zadany próg.

Użycie[ | edytuj kod]

Dodanie nowego zadania[ | edytuj kod]

Aby dodać nowe polecenie, wystarczy za pomocą polecenia echo przekazać komendę dla at podając dodatkowo kiedy lub za ile czasu ma się wykonać. W poniższym przykładzie zostało zlecone uruchomienie skryptu foo.sh za godzinę.

 $ echo 'foo.sh' | at now + 1 hour

Ten sam efekt można uzyskać w ten sposób. Może okazać się on pomocny, gdy do wykonania jest parę poleceń.

 $ at now + 1 hour
 at> foo.sh
 at> foo2.sh
 at> foo3.sh
 at> ^D #(Control-D zakończy wprowadzanie komend)

Inne przykłady użycia:

 $ echo 'foo.sh' | at 2017-04-30     # 30 kwietnia 2017 roku
 $ echo 'foo.sh' | at now + 5 minute # za 5 minut
 $ echo 'foo.sh' | at now + 1 day    # jutro o tej samej porze
 $ echo 'foo.sh' | at 2210           # o 22:10, jeśli dziś ta godzina minęła to wykona się jutro

Wyświetlenie zaplanowanych zadań[ | edytuj kod]

Polecenie atq służy do wypisania listy aktualnie zleconych zadań. W pierwszej kolumnie znajduje się identyfikator zadania, potem kolejno data zaplanowanego uruchomienia oraz osoba zlecająca. W tym wypadku user.

 $ atq
 44	Fri Apr 28 20:14:00 2017 a user
 45	Fri Apr 28 20:19:00 2017 a user

Usunięcie zaplanowanych zadań[ | edytuj kod]

Gdy znane jest id zadania, to poleceniem atrm <identyfikator_zadania> można je usunąć.

 $ atq
 44 Fri Apr 28 20:14:00 2017 a user
 45 Fri Apr 28 20:19:00 2017 a user
 $ atrm 44                          #usunięcie zadania o id 44
 $ atq
 45 Fri Apr 28 20:19:00 2017 a user
 $ atrm 45                          #usunięcie zadania o id 45
 $ atq
 $

Zobacz też[ | edytuj kod]

  • cron
  • crontab
  • at(1) – strona podręcznika systemu Linux




  • Reklama