Názorný průvodce, který vás seznámí s konceptem Shell v Linuxu a oblíbeným shellem BASH
„Shell“ je „interaktivní nástroj“ poskytovaný systémy Linux. Kdykoli mluvíme o příkazovém řádku v prostředí Linuxu nebo Unixu, máme na mysli „Shell“. Funguje jako prostředník mezi uživatelem a systémem, který přebírá vstup od uživatele a dodává jej do systému.
Linuxový shell poskytuje uživatelům způsob, jak spouštět programy nebo spravovat a manipulovat s jakýmikoli daty v systému Linux. Shell jako médium pro uživatele usnadňuje interakci se systémem prostřednictvím příkazů.
Příkazový řádek je nejzákladnější a nejzákladnější součástí Shell v systémech Linux a Unix. Znak $ je výchozí výzvou ve většině distribucí Linuxu a konkrétněji v distribucích, které používají Bourne Shell. Příkazový řádek funguje jako rozhraní, do kterého můžete zadávat příkazy. Tyto příkazy se pak interpretují provedené v jádře. Příkaz Shell je první program, který se spustí při prvním spuštění okna terminálu.
V tomto krátkém článku se dozvíte o některých základních faktech o shellech v Linuxu a také o otázce výchozího shellu v Linuxu.
Druhy Shell
V Linuxu existují dva hlavní typy shellů – Bourne Shell a shell typu C. Oba typy Shell mají některé výhody a také nevýhody.
Podívejme se na specifikace obou těchto typů v následujících částech.
Bourne Shell
Bourne Shell napsal Stephen Bourne v AT&T Bell Labs. Bourne Shell (sh
) byl první, který byl zaveden do systémů Linux. Tento shell můžete najít nainstalovaný jako /bin/sh
na většině linuxových distribucí.
Přestože byl Bourne Shell v té době velmi populární a preferovaný, měl určité nevýhody. Schopnost vyvolat předchozí příkazy v tomto Shellu chyběla. sh
postrádal mnoho moderních schopností, jako jsou aliasy, a proto byl méně efektivní.
- Označeno jako
sh
- The
$
znak je výchozí výzva.
Následují podkategorie Bourne Shell.
- Bourne Shell (
sh
) - Korn Shell (
ksh
) - Bourne Again Shell (
bash
) - POSIX Shell (
sh
)
Skořápky typu C
Shell typu C vytvořil pomocí programovacího jazyka C Bill Joy. C-Shell nebo „csh
‘ je považováno za vylepšení oproti Bourne Shell (sh
). csh
představil mnoho nových funkcí, jako je historie příkazů a aliasy, které v Bourne Shell chyběly.
- Označeno jako
csh
- The
%
znak je výchozí výzva.
Přestože se jednalo o vylepšení oproti Bourne shellu, mělo několik problémů. Také jeden významný problém s csh
spočívalo v tom, že vyžadovalo, aby uživatel měl předchozí znalost programovacího jazyka C, protože byl vytvořen na základě jazyka C.
Následují podkategorie skořepin typu C.
- C shell (
csh
) - Plášť TENEX/TOPS C (
tcsh
)
Na systémech Linux můžete zjistit různé shelly dostupné ve vašem systému pomocí kočka
příkaz. Informace o skořápkách jsou umístěny na /etc/shells
adresář. Chcete-li zjistit podrobnosti o skořápkách, použijte následující příkaz.
cat /etc/shells
Výstup:
gaurav@ubuntu:~$ cat /etc/shells # /etc/shells: platné přihlašovací shelly /bin/sh /bin/dash /bin/bash /bin/rbash gaurav@ubuntu:~$
Výchozí Shell na Linuxu
Chcete-li odpovědět na otázku „Který je výchozí shell v Linuxu?“, nejvhodnější odpovědí by bylo „BASH
“ (Bourne Again Shell). BASH
je nejoblíbenější shell, a proto se na většině linuxových distribucí nachází jako výchozí shell.
Chcete-li zkontrolovat svůj výchozí shell v Linuxu, můžete použít následující příkaz.
echo $SHELL
Výstup:
/bin/bash
To znamená, že shell aktuálně používaný v mém systému je BASH
skořápka.
Můžete zkontrolovat aktuální verzi BASH
ve vašem systému Linux pomocí následujícího příkazu:
bash --verze
Vlastnosti BASH Shell
BASH
je zpětně kompatibilní s Bourne Shell (sh
). BASH obsahuje mnoho prominentních funkcí z Korn Shell (ksh
), stejně jako C-Shell (csh
).
BASH nabízí mnoho nových funkcí, které u jeho předchůdců chyběly. A to nepochybně dělá z BASH shellu vynikající vylepšení oproti svým předchůdcům. Mnoho nových funkcí, jako jsou zástupné znaky, potrubí, doplňování tabulátorů, jsou významnými vylepšeními, díky nimž je BASH preferovaným shellem jako výchozím pro většinu distribucí Linuxu.
Podívejme se na některé pozoruhodné funkce prostředí Bash.
Historie příkazů: Tento jednoduchý příkaz vám může ušetřit námahu při přepisování dlouhého příkazu. Funkce historie příkazů vyvolává dříve zadané příkazy, které lze procházet terminálem pomocí kláves se šipkami.
Editace příkazového řádku: Tato funkce je nově zavedena s BASH. Umožňuje uživateli volně se pohybovat po příkazovém řádku zleva doprava a zprava doleva. Tato navigace na terminálu se nyní může zdát normální, ale oproti předchůdcům to bylo velmi významné zlepšení.
Přezdívky: Toto je odvozená funkce z C-shell. Umožňuje uživatelům zadat pouze krátký název nebo příkaz. Shell pak převede tento krátký příkaz na delší příkaz.
Jednorozměrné pole: 1-D pole v BASH umožňuje snadné odkazování na data. Je také možná manipulace se seznamy dat.
Spouštěcí soubory: Startup Files jsou skripty, které Bash čte a spouští při svém spuštění. Každý soubor je přiřazen pro konkrétní úkol.
Zabezpečení prostředí: BASH vám nabízí mimořádnou funkci ‚Omezeného režimu‘. A BASH
počínaje jménem rbash
umožňuje shellu fungovat v omezeném režimu.
Díky všem těmto pozoruhodným vlastnostem je bash shell široce preferovaným shellem v Linuxu a systémech podobných Unixu. Je to ze stejného důvodu, proč je akceptován jako výchozí shell pro většinu distribucí Linuxu.
Příkazy dostupné v prostředí BASH
BASH
shell vám nabízí nepřeberné množství příkazů, které vám usnadní práci a ovládnou všechny akce ve vašem systému ze samotného příkazového řádku. Níže jsou uvedeny některé základní příkazy BASH
shell nabízí na linuxových distribucích.
Poznámka: Seznam příkazů dostupných v shellu BASH NENÍ omezen pouze na tuto tabulku. Toto jsou některé ze základních příkazů používaných pro ilustrativní účely.
Příkaz | Popis |
rm | příkaz používaný k odstranění souboru |
cp | příkaz používaný k odstranění souboru nebo adresáře |
dotek | příkaz k vytvoření prázdného souboru |
mkdir | příkaz k vytvoření nového adresáře |
pwd | příkaz k vytištění názvu aktuálního pracovního adresáře |
CD | příkaz pro změnu adresáře |
Závěr
Poté, co se podíváme na všechny základní a důležité funkce shellu BASH, můžeme dojít k závěru, že shell BASH je oblíbeným shellem z dostupných možností díky své výkonné povaze, uživatelsky přívětivým funkcím a obrovskému koši příkazů, které uživateli udělají bez námahy. Také můžeme s jistotou říci, že BASH je výchozí shell v distribucích Linuxu.