Writing 2D Games in C using SDL by Thomas Lively
Obsah:
- Spusťte linuxový příkaz na pozadí
- Přesunout proces popředí na pozadí
- Udržujte procesy na pozadí spuštěné i po ukončení prostředí
- Alternativy
- Obrazovka
- Tmux
- Závěr
Obvykle, když spustíte příkaz v terminálu, musíte počkat, až se příkaz dokončí, než můžete zadat další příkaz. Říká se tomu spuštění příkazu v popředí nebo v popředí. Když je proces spuštěn v popředí, zabírá váš shell a můžete s ním komunikovat pomocí vstupních zařízení.
Co když příkaz trvá dlouho a chcete mezitím spouštět další příkazy? Máte k dispozici několik možností. Nejviditelnější a nejjednodušší možnost je spustit novou relaci prostředí a spustit v ní příkaz. Další možností je spustit příkaz na pozadí.
Proces na pozadí je proces / příkaz, který se spouští z terminálu a běží na pozadí, bez zásahu uživatele., budeme hovořit o procesech na pozadí je Linux. Ukážeme vám, jak spustit příkaz na pozadí a jak udržet proces spuštěný i po ukončení relace shellu.
Spusťte linuxový příkaz na pozadí
Chcete-li spustit příkaz na pozadí, přidejte na konec příkazu symbol ampersand (
&
):
command &
Na terminálu bude vytištěno ID úlohy shellu (obklopené závorkami) a ID procesu:
25177
Na pozadí můžete mít spuštěno více procesů současně.
Proces na pozadí bude pokračovat v psaní zpráv na terminál, ze kterého jste vyvolali příkaz. Chcete-li potlačit zprávy
stdout
a
stderr
použijte následující syntaxi:
command > /dev/null 2>&1 &
>/dev/null 2>&1
znamená přesměrování
stdout
do
/dev/null
a
stderr
do
stdout
.
Pomocí obslužného programu
jobs
zobrazíte stav všech zastavených úloh a úloh na pozadí v aktuální relaci prostředí:
jobs -l
Výstup obsahuje číslo úlohy, ID procesu, stav úlohy a příkaz, který úlohu spustil:
+ 25177 Running ping google.com &
Chcete-li do popředí přivést proces na pozadí, použijte příkaz
fg
:
fg
fg %1
Chcete-li ukončit proces na pozadí, použijte příkaz
kill
následovaný ID procesu:
Přesunout proces popředí na pozadí
Postup přesunutí běžícího procesu v popředí na pozadí:
- Zastavte proces zadáním
Ctrl+Z
Zastavte proces na pozadí zadánímbg
.
Udržujte procesy na pozadí spuštěné i po ukončení prostředí
Pokud vaše připojení klesne nebo se odhlásíte z relace prostředí, procesy na pozadí jsou ukončeny. Existuje několik způsobů, jak udržet proces spuštěný i po ukončení interaktivní relace prostředí.
Jedním ze způsobů je odebrání úlohy z řízení úlohy shellu pomocí vestavěného shellu shellu:
disown
disown %1
Potvrďte, že úloha je odstraněna z tabulky aktivních úloh pomocí příkazu
jobs -l
. Chcete-li vypsat všechny spuštěné procesy, včetně disowned, použijte příkaz
ps aux
.
Dalším způsobem, jak udržet proces spuštěný po ukončení shellu, je použít
nohup
.
Příkaz
nohup
provede jiný program určený jako jeho argument a ignoruje všechny signály
SIGHUP
(hangup).
SIGHUP
je signál, který je odeslán do procesu, když je jeho ovládací terminál uzavřen.
Chcete-li spustit příkaz na pozadí pomocí příkazu
nohup
, zadejte:
nohup command &
Výstup příkazu je přesměrován do souboru
nohup.out
.
nohup: ignoring input and appending output to 'nohup.out'
Alternativy
Existuje celá řada programů, které vám umožní mít více interaktivních relací současně.
Obrazovka
Obrazovka nebo GNU Obrazovka je terminálový multiplexerový program, který vám umožní spustit relaci obrazovky a otevřít libovolný počet oken (virtuálních terminálů) uvnitř této relace. Procesy spuštěné na obrazovce se budou nadále zobrazovat, i když se jejich okno nezobrazí, i když se odpojíte.
Tmux
Tmux je moderní alternativa k GNU obrazovce. S Tmux můžete také vytvořit relaci a otevřít v ní více oken. Relace Tmux jsou trvalé, což znamená, že programy spuštěné v Tmuxu budou pokračovat, i když zavřete terminál.
Závěr
Chcete-li spustit příkaz na pozadí, zadejte na konec příkazu &.
Když spustíte příkaz na pozadí, nemusíte čekat, dokud nedokončí, než budete moci provést další.
zakázka termináluTři linuxové distribuce dostanou klíčové aktualizace a jedna z nich zmizí

I když Fuduntu, Slackware a Ubuntu pochodují vpřed,
Zobrazte plochu pozadí jako pozadí spuštěné obrazovky v systému Windows 8.1

Zjistěte, jak můžete tapetu na plochu jako pozadí Start obrazovky snadno zobrazit v systému Windows 8.1
Základní linuxové příkazy

Vědět, jak používat příkazový řádek, může být velmi užitečné. V tomto článku projdeme některé z nejčastějších příkazů systému Linux, které každodenně používají správci systému Linux.