Typy příkazů shellu

Stránky: E-learning VŠCHT Praha
Kurz: Linux, shell
Kniha: Typy příkazů shellu
Vytiskl(a): Nepřihlášený host
Datum: pondělí, 7. října 2024, 13.23

1. Typy příkazů

Příkazy, které shell rozeznává, můžeme prakticky rozdělit do pěti skupin:

  • neznámý příkaz
  • vnitřní příkaz
  • vnější příkaz
  • funkce
  • alias

Typ příkazu zjistíme příkazem type.



1.1. Neznámý příkaz

Neznámý příkaz je pro shell příkaz, který neumí interpretovat, tzn. není k dispozici žádný program, který se ukrývá pod zadaným názvem příkazu.



1.2. Vnitřní příkaz

Vnitřní příkaz, označovaný také jako interní, či builtin, je nativní (rozuměj operačnímu systému vlastní) příkaz, který je přímo implementován v operačním systému, aby byl kdykoliv k dispozici pro jeho ovládání. Takovým příkazem je např. příkaz cd, příkaz pro změnu pracovního adresáře.


Seznam všech vnitřních příkazů shellu lze zobrazit příkazem compgen -b nebo enable.


Pomocí příkazu enable je také možné vnitřní příkazy přímo deaktivovat a opětovně aktivovat. Např. příkaz enable -n cd způsobí, že příkaz cd se stane pro shell neznámým příkazem.


Příkazem enable cd se příkaz cd opět aktivuje.



1.3. Vnější příkaz

Vnějšími či externími příkazy jsou obvykle názvy programů, které jsou do prostředí operačního systému nainstalované. Poznáme je tak, že příkaz type vrací cestu k místu v adresářové struktuře, kde jsou uložené. Vnějším příkazem je např. příkaz cat, příkaz pro zobrazení obsahu souboru.



1.4. Funkce

Funkcí se rozumí uživatelem definovaný program v aktuálním prostředí shellu. Uživatel má možnost podle pravidel syntaxe definovat vlastní funkci shellu, kterou následně může volat jejím jménem z příkazové řádky, tedy spustit ji jako libovolný jiný příkaz.

 

Příkaz type, kromě typu příkazu function vypíše i definici funkce.

 

Funkci je možné odstranit z aktuálního prostředí shellu pomocí příkazu unset -f.

 


1.5. Alias

Alias je příkaz, jehož jméno je náhradním jménem pro jiný příkaz nebo sadu příkazů shellu. Seznam všech definovaných aliasů v aktuálním prostředí shellu lze vypsat samotným příkazem alias nebo příkazem compgen -a.


Alias se definuje pomocí příkazu alias a lze použít pro libovolné typy příkazů, tedy i pro samotný alias. Obvykle se používá buď pro zkrácení názvu jiného příkazu, pokud např. obsahuje mnoho argumentů a jeho zápis je zdlouhavý,


a nebo pro pojmenovaní sady několika příkazů, které se mají vykonat postupně za sebou.


Alias lze zrušit příkazem unalias.