Operační systém GNU/Linux je víceúlohový, což zjednodušeně řečeno znamená, že poskytuje prostředky ke správě více úloh v jednom okamžiku. Typickým příkladem je situace, kdy chceme spustit nějaký program, ale přitom potřebujeme nadále pracovat s příkazovou řádkou.
Takovouto situaci můžeme vyřešit nejlépe tak, že si daný program spustíme na pozadí. Toho dosáhneme umístěním znaku ampersand (&) na konec řádku za příkaz:
$ script.sh &
Program je nyní spuštěn, ale jeho výstup vás neruší a můžete nadále pracovat v příkazové řádce. Jakmile se ale budete chtít na program podívat, je nezbytné převést jej na popředí. K tomu slouží příkaz fg. Budeme však potřebovat ještě identifikační číslo příslušné úlohy – to zjistíme příkazem jobs.
$ jobs
[1]+ script.sh &
$ fg 1
V případě, že nám na pozadí běží pouze jedna úloha, není třeba číslo specifikovat. Stejné je to i v případě, kdy chceme na popředí převést naposledy „upozaděnou“ úlohu.
Aby toho nebylo málo, můžeme také běžící úlohu převést na pozadí. K tomu je nezbytné její běh přerušit – čehož dosáhneme použitím klávesové kombinace [CTRL]-[Z]. Poté příslušnou úlohu přesuneme na pozadí příkazem bg.
$ cp video.avi /pub/movies
CTRL-Z
[1]+ Stopped cp video.avi /pub/movies
$ bg 1
Práce s úlohami je velice zajímavá, avšak protentokrát zůstaneme pouze u úvodu do jejich řízení a víceúlohové stránky systému. V následující části se detailněji podíváme také na plánování úloh.
GNU/Linux totiž umožňuje plánování úloh pro jednorázové (nástrojem at) i opakované (nástrojem cron) spouštění úloh dle zadaných parametrů. Oběma těmto nástrojům se tedy budeme podrobněji věnovat v příštích částech.
Autor: Jirka Dvořák