GNU/Linux >> Znalost Linux >  >> Linux

Jaké jsou různé typy shellů v Linuxu?

Shelly jsou důležitou součástí každé uživatelské relace Linuxu. V Linuxu máme k dispozici několik různých typů shellů pro plnění úkolů. Každá skořápka má jedinečné vlastnosti. Existuje tedy mnoho případů, kdy je jeden shell pro specifické požadavky lepší než druhý.

Proto je důležité, abychom si byli vědomi různých typů shellů dostupných v Linuxu. V tomto tutoriálu probereme, co je shell a proč je důležitý.

Dále prozkoumáme různé typy shellů v Linuxu, abychom porozuměli jejich funkcím a vlastnostem.

Co je to Shell a proč je potřebujeme?

Kdykoli se uživatel přihlásí do systému nebo otevře okno konzoly, jádro spustí novou instanci shellu. Jádro je srdcem každého operačního systému.

Je odpovědný za řízení kontroly a provádění procesů a za zajištění správného využití systémových zdrojů.

Shell je program, který funguje jako rozhraní mezi uživatelem a jádrem. Umožňuje uživateli zadávat příkazy jádru a přijímat od něj odpovědi. Prostřednictvím shellu můžeme spouštět programy a utility v jádře. Ve svém jádru je tedy shell program používaný ke spouštění jiných programů v našem systému.

Možnost interakce s jádrem dělá z shellů mocný nástroj. Bez možnosti interakce s jádrem nemůže uživatel přistupovat k utilitám nabízeným operačním systémem jeho počítače.

Pojďme pochopit hlavní shelly, které jsou k dispozici pro prostředí Linuxu.

Různé typy shellů v Linuxu

Pokud nyní chápete, co je to jádro, co je to shell a proč je shell tak důležitý pro systémy Linux, přejděme k poznání různých typů shellů, které jsou k dispozici.

Každá z těchto skořepin má vlastnosti, díky kterým je vysoce účinná pro určitý typ použití oproti jiným skořepinám. Pojďme si tedy probrat různé typy shellů v Linuxu spolu s jejich vlastnostmi a vlastnostmi.

1. Bourne Shell (sh)

Bourne shell, vyvinutý v AT&T Bell Labs Stevem Bournem, je považován za vůbec první UNIX shell. Označuje se jako sh. Oblibu si získal díky své kompaktní povaze a vysoké rychlosti provozu.

To z něj udělalo výchozí shell pro OS Solaris. Používá se také jako výchozí shell pro všechny skripty pro správu systému Solaris. Začněte číst o skriptování shellu zde.

Bourne shell má však některé zásadní nevýhody.

  • Nemá vestavěné funkce pro zpracování logických a aritmetických operací.
  • Na rozdíl od většiny různých typů shellů v Linuxu si Bourne shell nemůže vyvolat dříve použité příkazy.
  • Také postrádá komplexní funkce, které by nabízely správné interaktivní použití.

Úplný název cesty pro Bourne shell je /bin/sh a /sbin/sh. Ve výchozím nastavení používá výzvu # pro uživatele root a $ pro uživatele bez oprávnění root.

2. GNU Bourne-Again Shell (bash)

GNU Bourne-Again shell, známější jako Bash shell, byl navržen tak, aby byl kompatibilní s Bourne shellem. Obsahuje užitečné funkce z různých typů shellů v Linuxu, jako je Korn shell a C shell.

Umožňuje nám automaticky vyvolávat dříve použité příkazy a upravovat je pomocí kláves se šipkami, na rozdíl od Bourne shellu.

Úplný název cesty pro shell GNU Bourne-Again je /bin/bash. Ve výchozím nastavení používá výzvu bash-VersionNumber# pro uživatele root a bash-VersionNumber$ pro uživatele bez oprávnění root.

3. C Shell (csh)

Shell C vytvořil Bill Joy na Kalifornské univerzitě. Označuje se jako csh. Byl vyvinut tak, aby obsahoval užitečné programovací funkce, jako je vestavěná podpora pro aritmetické operace a syntaxe podobná programovacímu jazyku C.

Dále obsahoval historii příkazů, která chyběla v různých typech shellů v Linuxu, jako je Bourne shell. Dalším výrazným rysem shellu C jsou „aliasy“.

Úplný název cesty pro shell C je /bin/csh. Ve výchozím nastavení používá výzvu hostname# pro uživatele root a hostname% pro uživatele bez oprávnění root.

4. Korn Shell (ksh)

Korn shell byl vyvinut v AT&T Bell Labs Davidem Kornem, aby vylepšil Bourne shell. Označuje se jako ksh. Korn shell je v podstatě nadmnožinou Bourne shellu.

Kromě podpory všeho, co by bylo podporováno Bourne shell, poskytuje uživatelům nové funkce. Umožňuje vestavěnou podporu pro aritmetické operace a zároveň nabízí interaktivní funkce, které jsou podobné shellu C.

Korn shell spouští skripty vytvořené pro Bourne shell a zároveň nabízí manipulaci s řetězci, poli a funkcemi podobnou programovacímu jazyku C. Podporuje také skripty, které byly napsány pro C shell. Navíc je rychlejší než většina různých typů shellů v Linuxu, včetně C shellu.

Úplný název cesty pro shell Korn je /bin/ksh. Ve výchozím nastavení používá výzvu # pro uživatele root a $ pro uživatele bez oprávnění root.

5. The Z Shell (zsh)

Z Shell nebo zsh je rozšíření sh shell s mnoha vylepšeními pro přizpůsobení. Pokud chcete moderní shell, který má všechny funkce a mnohem víc, zsh shell je to, co hledáte.

Některé pozoruhodné funkce shellu z zahrnují:

  • Generujte názvy souborů na základě daných podmínek
  • Podpora pluginů a motivů
  • Index vestavěných funkcí
  • Dokončení příkazu
  • a mnoho dalších…

Pojďme si shrnout různé shelly v Linuxu, o kterých jsme hovořili v tomto tutoriálu, v tabulce níže.

Shell Úplný název cesty Výzva pro uživatele root Výzva pro uživatele bez oprávnění root
Bourne shell (sh) /bin/sh a /sbin/sh # $
GNU Bourne-Again shell (bash) /bin/bash bash-VersionNumber# bash-VersionNumber$
C shell (csh) /bin/csh # %
Korn shell (ksh) /bin/ksh # $
Z Shell (zsh) /bin/zsh # %

Koneckonců

Shelly jsou jedním, ne-li nejvýkonnějším nástrojem, který má uživatel Linuxu k dispozici. Bez shellů je pro člověka prakticky nemožné využívat vlastnosti a funkce nabízené jádrem nainstalovaným v jeho systému.

Zatímco jsme se zabývali pouze nejběžněji používanými typy shellů v Linuxu, existuje mnoho dalších typů, které stojí za to prozkoumat.

Doufáme, že vám tento tutoriál pomohl pochopit koncept shellů spolu s vlastnostmi různých typů shellů v Linuxu. Pokud máte nějakou zpětnou vazbu, dotazy nebo návrhy, neváhejte nás kontaktovat v komentářích níže.


Linux
  1. Linux vs. Unix:Jaký je rozdíl?

  2. Linux – Jaké jsou různé způsoby nastavení oprávnění k souborům atd. na Gnu/linux?

  3. UNIX / Linux:Co je to Shell? Jaké jsou různé Shelly?

  1. Jaké jsou typy DNS Nameserverů v Linuxu

  2. Jaké jsou typy serverů DNS

  3. Chrome v systému Linux – dotazujte prohlížeč, abyste viděli, jaké karty jsou otevřené?

  1. Pomocí terminálu Linux můžete zjistit, jaké soubory jsou ve vašem počítači

  2. Jaké jsou nevýhody linuxových front zpráv?

  3. Jaké jsou různé způsoby nastavení oprávnění k souborům atd. na gnu/linux