Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
os:bash [2022/11/01 10:13]
tomas [Promenne]
os:bash [2022/11/01 11:04]
tomas
Line 8: Line 8:
 ''promenna="Ahoj svete"'' ... definice promenne\\ ''promenna="Ahoj svete"'' ... definice promenne\\
 '': ${aaa?Promenna neni nadefinovana}'' ... overi, zda je promenna aaa nadefinovana, jinak vyskoci s RC1 a textem: aa: Promenna neni nadefinovana\\ '': ${aaa?Promenna neni nadefinovana}'' ... overi, zda je promenna aaa nadefinovana, jinak vyskoci s RC1 a textem: aa: Promenna neni nadefinovana\\
 +''echo ${ccc:?chyba}'' ... neprovede echo, kdyz promenna ccc nexistuje, nebo je nulova, vyskoci s RC 1 a textem ccc: chyba\\
 ''echo ${promenna-"vychozi"}'' ... vypise promennou, kdyz je definovana, tak text "vychozi", lze pouzit i prikaz `whoami`, nebo promennou $HOSTNAME.\\ ''echo ${promenna-"vychozi"}'' ... vypise promennou, kdyz je definovana, tak text "vychozi", lze pouzit i prikaz `whoami`, nebo promennou $HOSTNAME.\\
 ''echo ${retezec:-ahoj}'' ... vypise promennou retezec, pokud je prazdny, nebo nenadefinovany, jinak vypise "ahoj"\\ ''echo ${retezec:-ahoj}'' ... vypise promennou retezec, pokud je prazdny, nebo nenadefinovany, jinak vypise "ahoj"\\
 ''echo ${retezec:=ahoj}'' ... vypise promennou retezec. Pokud je prazdny, nebo nenadefinovany, nadefinuje ji na ahoj a vypise ahoj\\ ''echo ${retezec:=ahoj}'' ... vypise promennou retezec. Pokud je prazdny, nebo nenadefinovany, nadefinuje ji na ahoj a vypise ahoj\\
 +''echo ${retezec:+cau}'' ... vypise cau, pokud je promenna retezec nadefinovana a neprazdna (opak operatoru -)\\
 ''echo ${promenna:3}'' ... vypise promennou promenna, vynecha prvni 3 znaky\\ ''echo ${promenna:3}'' ... vypise promennou promenna, vynecha prvni 3 znaky\\
 ''echo ${promenna:3:3}'' ... vypise promennou promenna, vynecha prvni 3 znaky, napise jen nasledujici 3 znaky\\ ''echo ${promenna:3:3}'' ... vypise promennou promenna, vynecha prvni 3 znaky, napise jen nasledujici 3 znaky\\
 ''echo ${promenna/svete/chlape}'' ... vypise promennou promenna, nahradi vyskyt slova svete za chlape\\ ''echo ${promenna/svete/chlape}'' ... vypise promennou promenna, nahradi vyskyt slova svete za chlape\\
-''echo ${promenna##A*j}'' ... smaze pattern ze zacatku textu, vypise jen zbytek\\+''echo ${promenna#A*j}'' ... smaze z textu pocatecni nejkratsi mozny pattern ze zacatku textu, vypise jen konec bez patternu\\ 
 +''echo ${promenna##A*j}'' ... smaze z textu pocatecni nejdelsi mozny pattern ze zacatku textu, vypise jen konec\\ 
 +''echo ${promenna%A*j}'' ... smaze z textu koncovy nejkratsi mozny pattern ze zacatku textu, vypise jen zacatek bez patternu\\ 
 +''echo ${promenna<nowiki>%%</nowiki>A*j}'' ... smaze z textu koncovy nejdelsi mozny pattern ze zacatku textu, vypise jen zacatek\\ 
 +''echo ${promenna/aaa/j}'' ... v promenne promenna nahradi jeden vyskyt podretezce aaa za j\\ 
 +''%%echo ${promenna//aaa/j}%%'' ... v promenne promenna nahradi vsechny vyskyty podretezce aaa za j\\ 
 +''echo ${promenna/#*a/j}'' ... v promenne promenna nahradi zacatecni vyskyt podretezce aaa za j, ekvivalent ^*a\\ 
 +''echo ${promenna/%*a/j}'' ... v promenne promenna nahradi koncovy vyskyt podretezce aaa za j, ekvivalent *a$\\ 
 +''echo ${!a*}'' ... vypise vsechny promenne, ktere zacinaji na a\\ 
 +''echo ${!aaa}'' ... kdyz promenna aaa obsahuje nazev jine promenne, tak vypise hodnotu odkazovane jine promenne\\
 ''echo ${#prommena}'' ... vypise pocet znaku\\ ''echo ${#prommena}'' ... vypise pocet znaku\\
 ''unset promenna'' ... smaze (oddefinuje) promennou\\ ''unset promenna'' ... smaze (oddefinuje) promennou\\