3. Cvičení z Úvodu do UNIXu (9. 3. 2017)
Obsah
Opakování z minula -- co byste měli umět
- Jaký je rozdíl mezi ls * a ls.
- Hledat v manuálu.
- Vysekat ze souboru konkrétní řádky.
- Co se napíše při volání echo ~?
Proměnné
Už minule jsme narazili na existenci proměnných. Tentokrát si je vyzkoušíme používat.
- jmeno=Jenda -- přiřadí do proměnné
- echo $jmeno -- vypíše proměnnou. Podobně jako u expanze * se o proměnné stará shell. Pozor na to, že se to provádí před rozsekáním příkazu na jednotlivé argumenty.
- Doporučení: používejte malá písmena, proměnné se všemi písmeny velkými mají často speciální význam.
- $PATH -- seznam adresářů, ve kterých shell hledá volané programy. Na pořadí záleží!
- $HOME -- váš domovský adresář
- $USER -- uzivatelské jméno
- $PWD -- aktuální pracovní adresář
- $PS1 -- formát promptu (můžete si třeba
- $RANDOM -- náhodné číslo (16 bitů, tj. 0 - 32767) (Pozor! tohle je specifické pro bash)
Práva souborů:
- Viditelné například pomocí ls -l, příklad: drwxr-xr-x, -rw-r--r--
- První znak je typ souboru: d adresář (directory) - obyčejný soubor.
- Potom trojice rwx, r -- čtení, w -- zápis, x -- spouštění (u adresářů listování) (Pomlčka znamená, že na danou věc nemáme právo.)
- První trojice odpovídá vlastníkovi (jeden uživatel)
- Druhá odpovídá skupině (všichni uživatelé patřící do té skupiny, pokud to není vlastník)
- Třetí jsou všichni ostatní uživatelé
Psaní skriptů
To, co píšete do terminálu si můžete uložit do souboru. Následně můžete
zavolat váš shell a dát mu jako parametr váš soubor -- skript. Tedy například
zavoláním sh muj_ukol.txt spustíte postupně všechny příkazy napsané v daném
souboru.
Pokud souboru přidáte na začátek #!/bin/sh a přidáte mu práva na spuštění, můžete jej pouštět rovnou: ./muj_skript.sh
Pokud navíc takovýto skript umístíte do adresáře, který máte také v proměnné $PATH, můžete jej pak spouštět odkudkoli.
Nové příkazy
- cut
- paste
- join
- wc
- chmod
- chown