Linux E X P R E S

Facebook

Programovanie v shelli

shell_linux_ikona.png

Programovanie v shelli v Linuxe funguje podobne ako programovanie v jazyku Python. Prvá možnosť je, že príkazy zadávame priamo do shellu ako v IDLE v Pythone, pričom pri reštarte shellu si posledne zadané príkazy nebude pamätať.


1. časť úvod

Ide o interaktívny režim. Interaktívny režim sa avšak dá využiť pri ladení chýb, kde môžeme ísť po riadkoch v súbore a hľadať chybu v programe. Prípadne si môžeme „na nečisto“ vyskúšať fungovanie nášho programu. Druhá možnosť spočíva v podobe úpravy textu v textovom editore (v tomto seriáli si ukážeme textový editor Kate), kde k programu sa vieme dostať prakticky kedykoľvek. Nesmieme zabúdať na zmenu práv k súboru. Preto si ako prvú časť prejdeme podrobne príkaz chmod.

Príkaz chmod

Príkaz chmod v shelli slúži na zmenu práv k súboru. V niektorých distribúciach Linuxu sa dá spustiť iba pod účtom root. Na distribúcii OpenSuse Leap oprávnenie roota nie je potrebné. Príkaz chmod si ukážeme na 2 spôsoboch jeho fungovania: pomocou čísel a pomocou písmen. Historicky staršou verziou je fungovanie pomocou čísel. V niektorých distribúciach fungovanie pomocou písmen nemusí fungovať, preto je lepšie ukázať si fungovanie pomocou čísel. Avšak s príkazom pre zmenu práv k súboru je ešte potrebný príkaz pre výpis súborov aj s právami. Na tento účel slúži príkaz ls -al.

Obrázok 1: výpis príkazu ls -al Obrázok 1: výpis príkazu ls -al

Pri výpise príkazu ls -al si všímame prvý stĺpec zľava. Vysvetlime si význam písmen a poradia:
Prvý znak môže nadobúdať hodnoty:

•    d – directory – priečinok,
•    - – bez písmena, čisto spojovník – súbor,
•    l – link – prepojenie.

Ďalšie znaky sú uvedené v troch trojiciach, pričom tieto trojice udávajú práva k súboru. Poradie trojíc udáva práva pre:

•    prvá trojica – vlastník,
•    druhá trojica – skupina,
•    tretia trojica – ostatní.

Znaky udávané pri právach znamenajú:

- – bez písmena, čisto spojovník – žiadne práva,
r – read – právo na čítanie,
w – write – právo na zápis,
x – execute – právo na spustenie.

Pri písaní príkazov do súboru je dôležité, aby boli práva nastavené hlavne na x, čiže spustenie, inak Linux súbor nespustí a vypíše chybovú hlášku.

Obrázok 2: Ukážka chybovej hlášky pri nenastavení práv na spustenie Obrázok 2: Ukážka chybovej hlášky pri nenastavení práv na spustenie

Pri číselnom použití príkazu chmod netreba zabúdať, že používame 3 číslice v poradí zľava doprava: vlastník, skupina, ostatní. Jednotlivé číslice fungujú takto:

•    0 – žiadne oprávnenie,
•    1 – iba právo spúšťať,
•    2 – iba právo zápisu,
•    3 – právo zápisu a spúšťania,
•    4 – iba právo čítania,
•    5 – právo čítania a spúšťania,
•    6 – právo čítania a zápisu,
•    7 – plné všetky práva.

Dôležitým detail spočíva v tom, že nemusíte si pamätať všetky čísla, stačí si zapamätať 3 základné čísla, ostatné sú súčty týchto troch základných čísel, pričom sčítance sú čísla predstavujúce 1 právo (napr. čítať a spúšťať) a súčet je právo na činnosti v právach súčasne. Syntax príkazu chmod je napr. takáto: chmod 700 súbor. Samotný príkaz chmod nič nevypisuje, preto si treba pamätať príkaz pre výpis: ls -al súbor, kde súbor môže byť vynechaný a vypíše sa potom obsah priečinka.

Obrázok 3: ukážka príkazu chmod s číslami a následný výpis súboru s právami. Obrázok 3: ukážka príkazu chmod s číslami a následný výpis súboru s právami.

Chybová hláška na obrázku je tam preto, aby sme si uvedomili, že príkaz pre výpis je potrebné zadávať v správnom tvare.
A teraz sa vrhnime na príkaz chmod v písmenovej podobe. Syntax príkazu je takáto: chmod g-rwx súbor. Vysvetlime si význam písmen:
•    u – user – vlastník,
•    g – group – skupina,
•    o – others – ostatní,
•    a – all – všetci,
•    - – odober,
•    + – pridaj.

Písmená rwx sme si vysvetlili už vyššie. Výhodou tejto varianty príkazu chmod spočíva v tom, že nemusíme spočítavať, stačí si pamätať pár písmen a jednoduchým znamienkom práva odoberáme alebo pridávame podľa potreby.

Obrázok 4: použitie príkazu chmod s písmenami, chyba spôsobená nezadaním súboru Obrázok 4: použitie príkazu chmod s písmenami, chyba spôsobená nezadaním súboru

Záver

V ďalšej časti sa budeme venovať syntaxi shellu a množine príkazov. Príkaz chmod je dôležité ovlaádať, aby sme sa nemuseli vracať späť keď budeme pracovať so skriptom v súbore.

Autor: Ján Pastierik

Diskuze (0) Nahoru