GNU/Linux >> Znalost Linux >  >> Linux

Jak naplánovat úlohy pomocí at v Linuxu

Démon atd

Démon atd umožňuje uživatelům odesílat úlohy, které mají být provedeny později, například „ve 2:00“. Aby bylo možné používat démona atd, musí být spuštěn. Uživatelé mohou potvrdit, že atd běží, jednoduše prozkoumáním seznamu běžících procesů:

$ ps aux | grep atd
daemon   4730  0.0  0.2  1420  532  ?      S  15:42  0:00   /usr/sbin/atd 
madonna  5570  0.0  0.2  3572  640  pts/2  S  16:43  0:00   grep atd

Všimněte si, že sedmý sloupec určuje, ke kterému terminálu je proces přidružen. Pro příkaz blondie's grep je terminál pts/2, což pravděpodobně odkazuje na síťový shell nebo grafický terminál v rámci X session. Všimněte si, že démon atd nemá přidružený terminál. Jednou z definujících charakteristik démona je, že přestane být spojeno s terminálem, který jej spustil.

Odesílání úloh pomocí na

Příkaz at se používá k odesílání úloh do atd démon, který má být spuštěn v určitou dobu. Příkazy, které mají být spuštěny, jsou buď odesílány jako skript (s přepínačem -f na příkazovém řádku), nebo jsou zadávány přímo přes stdin. Standardní výstup z příkazu je odeslán uživateli.

at [-f filename | -m] TIME
Přepnout Efekt
-f název_souboru spusťte skript určený názvem souboru
-m Po dokončení upozorněte uživatele e-mailem, i když není k dispozici žádný výstup.

Denní čas lze specifikovat pomocí HH:MM s příponou „am“ nebo „pm“. Lze také použít výrazy „půlnoc“, „poledne“ a „čas na čaj“. (Čtete správně, „čas na čaj“.) Datum lze také zadat pomocí několika formátů, včetně MM/DD/RR. Manuová stránka at(1) poskytuje mnoho dalších podrobností.

Wrestler hogan by rád vytiskl soubor obsahující všechny zprávy od fanoušků, které obdržel, fanmail.txt. Je však trochu znepokojen, protože tiskárnu sdílí s Venturou, která tiskárnu také hodně používá. Ve snaze vyhnout se rvačce se Hogan rozhodne odložit tisk do 2:00 ráno.

$ at 2:00 am
warning: commands will be executed using (in order) a) $SHELL b) login shell c) /bin/sh
at> lpr fanmail.txt
at> CTRL-D
job 7 at 2020-06-17 02:00

Protože hogan nepoužil -f přepínač příkazového řádku, příkaz at vyzval Hogana, aby zadal své příkazy pomocí stdin (klávesnice). Naštěstí hogan ví, že CTRL-D, když je zadáno přímo z terminálu, označuje „konec souboru“. Případně mohl příkaz přenést přímo do stdin:

$ echo "lpr fanmail" | at 2:00 am
warning: commands will be executed using (in order) a) $SHELL b) login shell c) /bin/sh
job 7 at 2003-06-17 02:00

Dále Hogan potvrzuje, že jeho práce byla zaregistrována pomocí atq.

$ atq
7     2003-06-17 02:00  a hogan

Nakonec si hogan pamatuje, že Ventura je na dovolené, takže si může bez incidentů vytisknout mail od fanoušků. Rozhodne se svou úlohu zrušit a soubor přímo vytisknout.

$ atrm 7 
$ atq 
$ lpr fanmail.txt

Odložení úloh s dávkou

Šarže příkaz, stejně jako příkaz at, se používá k odložení úkolů na pozdější dobu. Na rozdíl od příkazu at dávkový příkaz nespouští v určitou dobu, ale místo toho čeká, dokud nebude systém zaneprázdněn jinými úlohami, ať už to může být. Pokud není stroj při odeslání úlohy zaneprázdněn, může se úloha spustit okamžitě. Démon atd monitoruje zatížení systému a před spuštěním úlohy čeká, až klesne pod 0,8.

Příkaz batch má syntaxi identickou s příkazem at, kde lze úlohy zadat pomocí stdin nebo odeslat jako dávkový soubor s -f přepínač příkazového řádku. Pokud je zadán čas, dávka zdrží sledování stroje až do zadaného času. V té době začne dávkové monitorování zatížení systému a spustí úlohu, když systém není jinak zaneprázdněn.


Linux
  1. Jak restartovat Linux pomocí příkazového řádku

  2. Jak zabít proces v Linuxu pomocí příkazu?

  3. Jak třídit soubory v Linuxu pomocí příkazu Sort

  1. Linuxové tipy pro používání cronu k plánování úloh

  2. Naplánujte si úlohu pomocí příkazu Linux at

  3. Jak rozdělit iso nebo soubor pomocí příkazu „split“ v Linuxu

  1. Jak používat příkaz „at“ k naplánování úkolu na daný nebo pozdější čas v Linuxu

  2. Jak napsat text na obrázek pomocí příkazu Linux

  3. Jak vypnout nebo restartovat Linux pomocí příkazového řádku