Bash zní jako zvláštní název pro rozhraní příkazového řádku, které vítá uživatele přihlašující se do jakékoli distribuce Linuxu. Co je to vlastně Bash? K čemu ji můžete použít? Pojďme to zjistit.
Zatímco Bash je obvykle spojen s Linuxem, můžete použijte jej ve Windows také. macOS již Bash obsahuje, i když změnil výchozí prostředí na Zsh – pokročilou verzi Bash s některými dalšími funkcemi.
Co je to Shell?
Výraz Bash shell se často používá, ale co je to vlastně shell? Proč je to potřeba? A proč se zdá, že Bash je jediná skořápka?
Moderní operační systémy s intuitivním grafickým uživatelským rozhraním usnadňují práci s počítačem. Ale v počátcích počítačů nebylo tak jednoduché říkat systému, co má dělat.
Programátoři museli znát nízkoúrovňové detaily systému, pro který kódovali, a ručně instruovat každý kus hardwaru. Operační systémy byly navrženy tak, aby překlenuly tuto propast, ale jak byste dali pokyny samotnému OS?
Vstupte do prostředí Shell. Vnější vrstva operačního systému byla navržena jako interaktivní prostředí odhalující všechny funkce počítače v jednoduchém rozhraní. Tento shell byl nejdále, do kterého se musel uživatel počítače ponořit, protože obsahoval všechny příkazy potřebné k provozu systému.
Bourne Again: Jak vznikl Bash
Obvyklá mylná představa je, že Bash vytvořil Linus Torvalds pro operační systém Linux. Ve skutečnosti byl Bash pouze portován do Linuxu a byl používán již v jeho předchůdci, Unixu.
V mnoha ohledech je Unix tím, kde to všechno začalo pro moderní operační systémy. Odstranil velkou část spletité složitosti, která sužovala rané implementace OS, a představil funkce počítače v poměrně jednoduchém textovém rozhraní.
Samozřejmě, že samotný Unix si většinu svých nápadů vypůjčil od Multics, včetně konceptu shellu. Ale byl to Unix, kdo ve skutečnosti tuto techniku zpopularizoval, přičemž Thompson Shell byl uveden na trh s jeho první verzí.
Jeho funkcionalita však byla dosti omezená a mnoho programátorů nakonec upravilo shell tak, aby byl pro skriptování přívětivější. Bourne Shell byl oficiální náhradou unixového shellu a přidal podporu pro shell skripty..
The Bourne Again Shell byl vydán mnohem později a nabídl další vylepšení svých skriptovacích schopností a přeměnil jej na bezplatný, open-source GNU licenční shell, který by mohl používat jakýkoli OS. A byl rychle přijat Linuxem a stal se výchozím shellem pro jeho různé distribuce.
Co ale umí Bash?
Bash je v podstatě plnohodnotné skriptovací prostředí s úplným přístupem k systému Linux. Od správy souborů po spouštění aplikací můžete každou výpočetní úlohu provádět pomocí příkazů Bash.
Pro většinu uživatelů Linuxu to znamená pouze ruční příkazy shellu. Koneckonců, hlavním účelem Bash je sloužit jako rozhraní k operačnímu systému.
A těchto vestavěných příkazů je poměrně dost. Vlastnictví souborů můžete spravovat pomocí chown, konfigurovat nastavení sítě pomocí ifconfig, vyhledávat adresáře pomocí nalézt – seznam pokračuje.
Bash by ale neexistoval, kdyby uživatele zajímaly pouze příkazy Linuxu. Ne, skutečná síla prostředí Linuxu spočívá ve skriptování.
Význam skriptování
Myšlenka skriptovacích příkazů je jednoduchá. Místo ručního zadávání všech příkazů, které má systém provést jeden po druhém, ukládáte příkazy do textového souboru, který lze spustit na vyžádání.
To změní rozhraní shellu na programovací jazyk, který uživatelům umožňuje automatizovat jakoukoli akci do znovu použitelného skriptu. Je zřejmé, že jde ještě dále, protože každý programovací jazyk potřebuje kromě možnosti ukládat kód i věci jako proměnné a funkce.
A Bash má všechny tyto funkce. To je důvod, proč je shell – a do jisté míry Linux obecně – tak oblíbený pro správu serverů a komerčních systémů.
Domácí uživatel se může dostat kliknutím na řadu tlačítek, ale správce systému musí být schopen provádět jakoukoli akci na velkém počtu počítačů na dálku. Bash skripty umožňují tento druh automatizované správy systému.
Zvažte například náš průvodce přejmenováním souborů a složek v systému Linux. Průvodce ilustruje obě metody – GUI i skript. Jak můžete vidět, metoda skriptování je mnohem škálovatelnější, když se jedná o velký počet souborů.
Začínáme s Bash.
Na Bash je dobré, že se neomezuje pouze na Linux. Nyní můžete nainstalovat Linux na Windows prostřednictvím Windows Subsystem for Linux (WSL), který je standardně dodáván s Bash.
To znamená, že můžete začít experimentovat s Bash, aniž byste museli úplně přejít na Linux. I když jste příležitostný uživatel, který nemá v úmyslu pracovat se servery Linux, zajímavé možnosti prostředí Bash pro vás mohou být užitečné.
Ne že by Bash byla vaše jediná možnost pro automatizaci výpočetních úloh. PowerShell je podobné rozhraní, které funguje s Windows – kromě toho, co můžete spravovat pomocí příkazový řádek, samozřejmě.