Pokud čtete tento článek, pak je velká pravděpodobnost, že jste se v minulosti setkali s pojmy shell, sh, bash atd. Tyto termíny mohou znít matoucí, a protože spolu úzce souvisejí, je to ještě horší. Proto jsem se rozhodl napsat tento příspěvek s cílem pokusit se vysvětlit rozdíly mezi nimi.
Shell vs. jádro
Než budeme pokračovat, je důležité, abychom pochopili, co znamenají pojmy shell a jádro.
Jádro
Jádro je centrem operačního systému. Je zodpovědné za činnosti, jako je interakce s hardwarem, provádění vstupů a výstupů ze souborů a spouštění procesů.
Shell
Shell funguje jako rozhraní mezi uživatelem a jádrem. Technicky vzato je shell interpret příkazového řádku, tj. program, který buď interpretuje příkazy zadané v emulátoru terminálu (interaktivní režim), nebo zpracovává skripty shellu (textové soubory obsahující příkazy).