Shell skript: Porovnání verzí
Smazaný obsah Přidaný obsah
změna šablony |
m Robot opravil přesměrování na Ls - Změněn(y) odkaz(y) na ls (Unix); kosmetické úpravy |
||
Řádek 3:
'''Shell skript''' je [[Scripting language|skript]] napsaný pro [[Shell (computing)|shell]], nebo [[příkazový řádek]], v [[operační system]]. Je často považován za [[programovací jazyky pro řešení konkrétního problému]]. Typické operace prováděné shell skriptem zahrnují manipulaci se soubory, provádění programování, a tisk textu.
Mnozí interpreti shell skriptu fungují jako [[příkazový řádek]], jako například různé [[
== Funkce ==
=== Zkráceně ===
V úplně nejzákladnější formě, shell skript poskytuje vhodnou variantu systémového příkazu kde je speciální nastavení prostředí, možnosti příkazů, nebo pozdější zpracování aplikováno automaticky, ale způsobem, který umožňuje novému skriptu působit jako normální Unix příkaz.
Jako příklad může být vytvoření zkrácené verze příkazu [[ls (Unix)|ls]], který slouží k výpisu adresářů a souborů,
<source lang="bash">
Řádek 17:
</source>
Zde [[Shebang (Unix)|první řádek (Shebang)]] označuje který interpret by měl být použit k provedení zbytku skriptu, a druhý řádek vytvoří seznam s možnými atributy formát souboru, sloupce, všechny soubory (žádný vynechaný), a velikost v blocích.
Uživatel by pak měl být schopen jednoduše používat <tt>l</tt> pro nejběžněji používaný krátký výpis.
Řádek 30:
</source>
V tomto případě by shell skript začal svým normálním počátečním řádkem <span style="font-family:courier">#!/bin/sh</span>. Následně skript provede příkaz <span style="font-family:courier">clear</span> který vyčistí terminál od veškerého textu před přechodem na další řádek. Následující řádek zajišťuje hlavní funkci skriptu. <span style="font-family:courier">ls -l -a</span> příkaz vytvoří seznam souborů a adresářů, které jsou v adresáři, ve kterém skript běží. Atributy <span style="font-family:courier">
=== Dávkování úloh ===
Shell skripty umožňují několika příkazům, které jsou ručně zadány do příkazového řádku, aby byly vykonány automaticky, bez nutnosti čekání na uživatele, který by spustil každou fázi posloupnosti. Například v adresáři se třemi zdrojovými soubory v C kódu, spíš než ručně rozbíhat čtyři příkazy potřebné pro sestavení finálního programu, stačí místo toho vytvořit [[C shell]] skript, zde pojmenovaný <tt>build</tt> a uložit ho do adresáře se soubory, kde je po spuštění automaticky spojí:
Řádek 45:
</source>
Tento skript uživateli umožní po editaci, zapauzování editoru a následném napsání <tt>./build</tt> vytvoření updatovaného programu, jeho otestování a poté vrátí uživatele zpět do editoru. Od roku 1980 jsou takovéto skripty nahrazovány programy jako [[
=== Běžné používání ===
Jednoduché dávkované úlohy jsou obvyklé pro izolované úlohy, ale použití shell smyček, testů, a proměnných nabízí uživateli mnohem větší flexibilitu. [[Bash]] skript pro převod obrázků ve formátu JPEG na PNG formát, kde jsou jména obrázků k dispozici v příkazovém řádku - lze i pomocí zástupných znaků - namísto toho, aby byly uvedeny ve skriptu. Takto vytvořený skript nazveme například jpg2png.
<source lang="bash">
#!/bin/bash
for jpg in "$@" ; do
png="${jpg%.jpg}.png" # vytvoří PNG verzi souboru přepsáním .jpg na .png
echo converting "$jpg" ... # vypíše informaci, že skript běží
Řádek 61:
exit 1
fi # konec podmínky "if"
done
echo all conversions successful
exit 0
</source>
|