Příkazový řádek¶
Základním komunikačním rozhraním v OS Unix je příkazový řádek. Ihned po přihlášení se uživateli spustí tzv. příkazový interpret neboli shell.
Ve většině Linuxových distribucí je jako výchozí shell nastaven program Bash. Ale nabídka je mnohem větší: Např. C shell, Korn shell nebo můj oblíbený Z shell.
- Unixový shell
- poskytuje uživateli textové (příkazové) komunikační rozhraní — CLI
- komunikuje s uživatelem
- interpretuje jeho příkazy
- spouští jiné programy
Shell je v podstatě skriptovací programovací jazyk. Shell vytváří prostředí příkazového řádku, do kterého uživatel zadává názvy příkazů, které chce spustit. Shell tyto příkazy interpretuje, spouští odpovídající programy a umožňuje sledovat jejich výstup. Umožňuje příkazům předávat parametry, seskupovat je, slučovat příkazy do skriptů a podobně. Shell představuje „skořápku”, která skrývá uživateli detaily ovládání kernelu (jádra) operačního systému. Mnoho uživatelů unixových systémů dosud považuje moderní příkazový řádek shellu za mnohem pohodlnější způsob ovládání počítače než grafické uživatelské rozhraní.
Příkaz obsahuje:
- jméno příkazu
- volby — přepínače
- parametry
- metaznaky — znaky se speciálním významem (mezera,
> < * ? \ [ ] { })
Například:
1 | |
ls- je jméno příkazu
--all -l- jsou přepínače, které modifikují chování příkazu ls
data Documents- jsou parametry; v tomto případě názvy souborů nebo adresářů
- mezera
- je je tzv. metaznak (znak se speciálním vyznamem) a slouží jako oddělovač parametrů a přepínačů
Volby (přepínače) mohou být dlouhé nebo krátké. Krátké přepínače jsou uvozené
jednou pomlčkou - a je možné je spojovat: ls -lisa je volání příkazu ls s
volbami l, i, s, a a je ekvivalentní pro zápis ls -l -i -s -a.
Dlouhé (slovní) přepínače jsou uvozené dvěma pomlčkami --. Například ls --all
nebo ls --format=single-column.
Speciální parametr -- obvykle znamená konec voleb, tedy že další parametr
není přepínač i když začíná pomlčkou, ale například název souboru, jehož jméno
začíná pomlčkou.
Příkaz
1 | |
je totéž jako
1 | |
ale
1 | |
vypíše podrobné informace k souboru -soubor.
Ukázka přebírání parametrů programem¶
Každý programovací jazyk umožňuje převzít parametry, které mu na příkazové
řádce shell předává. Většinou se tak děje přes proměnnou nebo pole ARGV. Dále
uvedený příklad je v programovacím jazyku Python.
1 2 3 4 5 6 7 8 9 10 11 12 | |
1 2 3 4 5 | |
Manuálové stránky¶
Každý příkaz (např. ls nebo mkdir) má svou manuálovou stránku, ve které je
popis daného příkazu, jeho syntaktická pravidla a popis voleb a přepínačů.
Manuálovou stránku zobrazíme příkazem man.
1 | |
Například
1 | |
Příkaz man ve skutečnosti manuálovou stránku pouze najde a předá ji jinému programu, který ji zobrazí. Programu pro zobrazování textových souborů na terminál se říká stránkovač (pager). V našem případě (a doufám, že i na všech jiných rozumně nastavených Linuxových systémech) je stránkovačem program less.
Ovládání programu less (manuálové stránky)¶
| Klávesa | Funkce |
|---|---|
q |
ukončí manuálovou stránku |
h |
zobrazí nápovědu |
j, k |
pohyb v nahoru dolů stejně jako pomocí šipek |
/vyraz |
najde první následující výskyt výrazu (řetězce) |
n |
najde další výskyt výrazu |
N |
najde předchozí výskyt výrazu |
?vyraz |
najde poslední předchozí výskyt výrazu (řetězce); význam n a N je přehozen |
Výrazem může být obyčejná posloupnost znaků nebo regulární výraz.
Více se dozvíte při stisku klávesy h nebo v manuálové stránce.