Bourne Again SHell
Shell je program, který v unixových operačních systémech vytváří základní textové rozhraní mezi uživatelem a operačním systémem.
Prompt je několik znaků na začátku řádku, za kterými stojí kurzor. Toto uskupení se nazývá výzva (anglicky prompt). Před kurzorem se mohou zobrazovat různé informace od jména přihlášeného uživatele, přes jméno počítače, aktuální adresář, čas až po verzi Bashe. Když se v Bashi zobrazí prompt, je možné zadávat příkazy. Obecně to, co zadáme na řádku jako první, je chápáno jako příkaz.
Zadáme příkaz, pokud neodpovídá žádnému internímu příkazu, začne Bash hledat spustitelný soubor (program) stejného jména na disku. Některé příkazy můžeme použít jen takto samostatně, většina jich ale vyžaduje parametry.
Parametr je prostředek k tomu, aby uživatel svůj požadavek upřesnil (např. s čím a jak má příkaz pracovat).
Více argumentů od sebe oddělujeme mezerou.
ls /home
ls /home /var/spool
Vypíše obsahy adresářů /home a /var/spool
Argumenty nemusíme zadávat jen jeden argument. Více argumentů od sebe oddělujeme mezerou. Před argumenty
lze většinou uvést ještě různé volby, které mění nebo rozšiřují funkcionalitu příkazu.
Voleb můžeme uvést více současně.
Volby v krátké (jednoznakové) podobě:
ls -l -a
Zkrácený zápis:
ls -la
Volby dlouhé:
ls --format=long –all
Komu nestačí nápověda získaná pomocí --help, může pro většinu příkazů využít manuálové stránky. Jejich vyvolání je snadné. Stará se o ně program man, jehož parametrem je jméno manuálové stránky, což je zpravidla zároveň jméno programu. Po zadání man ls tak dostaneme manuálovou stránku programu ls. V záhlaví vidíme stručnou definici programu, následuje podrobná syntaxe. I zde platí, že parametry uvedené v hranatých závorkách nejsou povinné.
Program man, parametr - jméno manuálové stránky, jméno programu.
man ls
Obsahuje:
Pro zobrazení se používá příkaz less. Po manuálové stránce se pohybujeme šipkami, klávesami [PgUp] a [PgDn], ukončení [q], nápověda [h].
Nápověda k příkazu
--help
Echo znamená v angličtině ozvěnu. Příkaz vypíše na standardní výstup zadané argumenty, oddělí je mezerou
a zakončí znakem nový řádek.
Pokud bychom chtěli, aby echo chápalo více slov jako jeden argument, můžeme je uzavřít do uvozovek (")
nebo apostrofů ('). Uvozovky totiž dovolují Bashi provádět speciální znaky (umožňuje jejich expanzi).
Co je v apostrofech, bude vypsáno přesně tak, jak to zadáme.
Tento příkaz vymaže obrazovku terminálu.
Příkaz rekurzivně prochází strom podadresářů, který začíná zadanou cestou a hledá v něm soubory splňující zadané podmínky. Implicitní cestou je pracovní adresář.
find [cesta...] [výraz]
find . -name retezec
Hledá soubor zadaného názvu. Najde-li jej, vypíše jej i s cestou. Pokud ne, nevypíše nic.
find /home/jirka /home/lada -size +10000c -atime +5 -ok rm {}\;
Hledá v adresářích /home/lada a /home/jirka, smaže všechny soubory větší než 10000 bajtů a poslední přístup k nim byl před více než pěti dny.
Expr slouží k vyhodnocení zadaného matematického výrazu (expression, tj. anglicky výraz). Každý operand a operátor musí být uveden jako oddělený argument.
expr 5 + 10 15