Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Linux - skripty Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu www.rvp.cz, ISSN: 1802-4785.

Podobné prezentace


Prezentace na téma: "Linux - skripty Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu www.rvp.cz, ISSN: 1802-4785."— Transkript prezentace:

1 Linux - skripty Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN:  Provozuje Národní ústav pro vzdělávání, školské poradenské zařízení a zařízení pro další vzdělávání pedogických pracovníků (NÚV).

2 Skripty - úvod Co jsou to skripty? Je to prostě jen seřazený seznam příkazů, které se mají vykonat. Skriptování má své výhody. Takový skript nemusíte kompilovat Spustíte jej na jakémkoli počítači (PC, Mac, Atari, Amiga, Sun, Sgi, ...) a operačním systému, kde běží Bash (Linux, BSD, Windows, MiNT, AIX, Solaris,..) Skripty ukládáme do standardních textových souborů Pro editaci používáme textové editory, které nepřidávají formátovací značky Linux - skripty

3 První skript #!/bin/bash echo Hello world.
Výuku programování bývá zvykem začínat primitivním programem hello world vytvoříme soubor první, s následujícím obsahem: #!/bin/bash echo Hello world. První řádka označuje, který interpret se má použít ke „spuštění“ příslušného souboru (bash). Na rozdíl od Windows v Linuxu nezáleží na příponě souboru ale na metadatech Příkaz echo vypíše na obrazovku (standartní výstup) následující text Linux - skripty

4 Spuštění skriptu chmod a+x první ./první
pro spuštění musíme souboru nastavit příslušné oprávnění, povolení spouštět: chmod a+x první přepneme se do příkazového řádku a spustíme: ./první programy v aktuálním adresáři je třeba spustit tak, že se na aktuální adresář odkážete v cestě Cesta pro vyhledávání většinou obsahuje adresáře jako /bin nebo /usr/bin, v domovském adresáři uživatele pokud soubor skriptu zkopírujeme tam, můžeme ho spouštět přímo: první Linux - skripty

5 Podmínky Průběh skriptu může někdy narazit na situaci, kde bude třeba o něčem rozhodnout Za tímto účelem máme k dispozici podmínku: if [ podminka ]; then prikaz fi Pokud je podmínka podminka pravdivá, provede se prikaz Je však možné konstruovat i složitější podmínky, třeba jako je tato: if [ vyraz1 ]; then prikaz1 elif [ vyraz2 ]; then prikaz2 else prikaz3 Linux - skripty

6 Výrazy v podmínkách ! výraz negace výrazu
výraz1 -a výraz2 logická spojka AND výraz1 -o výraz2 logická spojka OR -e soubor soubor existuje -f soubor soubor existuje a je to soubor -d soubor soubor existuje a je to adresář soubor1 -nt soubor2 soubor1 je novější než soubor2 soubor1 -ot soubor2 soubor1 je starší než soubor2 -n řetězec řetězec je neprázdný -z řetězec řetězec je prázdný řetězec1 = řetězec2 řetězce jsou shodné řetězec1 != řetězec2 řetězce jsou různé Linux - skripty

7 Proměnné PROMENNA="Moje proměnná.„ echo $PROMENNA
Operační systémy se již dlouhou dobu neobejdou bez možnosti nastavit určité parametry za chodu. Využívá se k tomu nástroj zvaný proměnná prostředí Můžeme je vypsat příkazem env USER = jméno uživatele GROUPS = seznam skupin, jichž je současný uživatel členem HOME = domovský adresář HOSTNAME = jméno počítače OSTYPE = typ operačního systému PWD = aktuální pracovní adresář RANDOM = náhodné číslo do 0 do 32767 můžeme vytvořit i vlastní proměnné PROMENNA="Moje proměnná.„ při použití proměnné získáme hodnotu pomocí $ echo $PROMENNA Linux - skripty

8 Cyklus Cyklus umožňuje provést určitou část skriptu vícekrát, třeba s různými parametry. FOR for (( a=1 ; $a-4 ; a=$a+1 )) do echo $a done První z nich přiřazuje proměnné a hodnotu 1. Provede se pouze na začátku prvního průchodu. Druhý výraz slouží k rozhodování, zda se má smyčka vykonat. K vykonání dojde, pokud bude mít zde uvedený výraz hodnotu různou od nuly. V prvním průchodu je a=1, takže a-4 není nula. Před každým dalším průchodem ale bude proveden třetí výraz, kde se hodnota a zvýší vždy o 1. Ve druhém průchodu tak nabyde hodnoty 2 a ve třetím 3 Po skončení třetího průchodu bude opět aplikován třetí výraz a hodnota a se tak zvýší na čtyři. Nyní je ovšem výsledkem druhého výrazu (a-4) nula, takže čtvrtý průchod smyčkou již neproběhne. Po spuštění uvidíte číslice 1, 2 a 3 Linux - skripty

9 while a until Cykly while a until pracují tak, že opakují určitý postup, dokud je splněna určitá podmínka (cyklus while) nebo dokud určitá podmínka splněna není (cyklus until). Syntaxe je prakticky shodná cislo=1 until [ $cislo -eq 5 ]; do echo "$cislo" cislo=$((cislo+1)) done while [ $cislo -gt 0 ]; cislo=$((cislo-1)) done Tento program vypíše: První cyklus se opakuje tak dlouho, dokud nenastane jeho podmínka, tj. dokud proměnná cislo nabyde hodnoty 5. Druhý cyklus se opakuje tak dlouho, dokud je jeho podmínka splněná, tj dokud je proměnná cislo větší než 0. Linux - skripty

10 Break a continue Někdy můžeme mít zájem běh nějakého cyklu ukončit úplně nebo nedokončit iteraci a provést další opakování. K tomu slouží příkazy break a continue: for i in ; do if [ $i -eq 3 ]; then continue elif [ $i -eq 5 ]; then break fi echo $i done Výstupem tohoto skriptu bude 1 2 4 Když se do proměnné i dostala trojka, použili jsme příkaz continue, který přeskočil zbytek těla konstrukce for a přistoupil k další hodnotě, tedy ke čtyřce. V momentě, kdy se do proměnné i dostala pětka, provedl se příkaz break, který ukončil provádění celého cyklu. Linux - skripty


Stáhnout ppt "Linux - skripty Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu www.rvp.cz, ISSN: 1802-4785."

Podobné prezentace


Reklamy Google