PředchozíNahoruDalšíObsah

16.10 Příkaz set

Příkaz set nastavuje proměnné shellu. Může to být způsob, jak využít pole v příkazech, které předávají na výstup hodnoty oddělené mezerami.

Dejeme tomu, že chceme v shellu použít název aktuálního měsíce. Systém nabízí příkaz date, který vrací řetězec obsahující měsíc, ale my chceme tento měsíc získat odděleně od ostatních polí. Můžeme to udělat zkombinováním konstrukce $(...), pomocí které provedeme příkaz date a získáme výsledek (na který se za chvíli podíváme podrobněji) s příkazem set. Měsíc tvoří ve výstupu příkazu date druhou položku:

#!/bin/bash

echo Datum je $(date)
set $(date)
echo Měsíc je $2

exit 0

Tento program nastavuje seznam parametrů podle výstupu příkazu date a z pozičních parametrů $2 pak získá požadovaný měsíc.

Všiměte si, že jsme na příkazu date demonstrovali způsob nastavení pozičních parametrů. Protože výstup příkazu date závisí na místním jazyce, ve skutečnosti bychom název měsíce získali pomocí zápisu date +%B. Příkaz date má mnoho dalších parametrů, o kterých se dozvíte víc v manuálových stránkách.

Pomocí příkazu set a příslušných parametrů můžeme také řídit chování shellu. Nejčastěji se používá set -x, který způsobí, že skript vždy vypíše název právě prováděného příkazu.

PředchozíNahoruDalšíObsah

15. října 2000 17:16