Argentinský prezident Javier Milei čelí více než stovce žalob a trestních oznámení kvůli spáchání podvodu, protože na svých sociálních sítích propagoval kryptoměnu $LIBRA, jejíž hodnota se v krátké době znásobila a pak zhroutila.
Wayland Protocols byly vydány ve verzi 1.41. S dlouho očekávaným protokolem správy barev a High Dynamic Range (HDR).
Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.11.0. Podrobný přehled novinek v changelogu. Původně se jedná o Minecraftem inspirovaný Minetest (Wikipedie) v říjnu loňského roku přejmenovaný na Luanti.
V stredu 19. 02. 2025 o 10:00h bude spustený jarný webinár zdarma. Na tomto webinári si ukážeme praktické ukážky monitorovania Prometheus endpointov s využitím nástroja Zabbix. Účastníci sa dozvedia, ako nastaviť a konfigurovať Zabbix na zber dát z prometheus exporterov vrátane vytvárania LLD pravidiel. Tento webinár je určený pre mierne pokročilých administrátorov Zabbixu. Registrácia na stránke: Axians Slovakia. Zoznam všetkých webinárov: Axians Slovakia webináre.
Byla vydána beta verze GNOME 48. Vyzkoušet lze instalační ISO GNOME OS. Vydání GNOME 48 je plánováno na březen.
Bochs (Wikipedie), tj. emulátor počítačů typu x86 a x86-64, byl vydán ve verzi 3.0.
Věříte své kalkulačce? Kolik je (10^100) + 1 − (10^100)? A kolik 1%−1%?
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
FlappyFavi, hra Flappy Bird v ikoně Favicon. Nefunguje na mobilech.
Byly vyhlášeny výsledky (YouTube) 28. ročníku D.I.C.E. (Design, Innovate, Communicate, Entertain) Awards: Hrou roku 2024 je Astro Bot.
Informace o názvu skriptu, počtu předaných argumentů a argumenty samotné jsou uloženy ve speciálních proměnných.
$0
- název skriptu$#
- počet předaných argumentů$IFS
- seznam znaků, který je použit k oddělování slov
atp., např. když shell čte vstup$1
až $9
- první až devátý argument
předaný skriptu${n}
- libovolný n-tý argument předaný skriptu$*
- obsahuje všechny argumenty oddělené prvním znakem
z $IFS
$@
- jako předchozí, ale k oddělení se nepoužívá první
znak z $IFS
Skript argumenty.sh
nám poslouží jako ukázka.
#!/bin/bash
|
Nyní skript spustíme s 10 argumenty.
$ ./argumenty.sh jedna dva tři čtyři pět šest sedm osm devět deset
|
Provádění funkcí je mnohem rychlejší než provádění skriptů, protože
funkce si shell udržuje trvale předzpracované v paměti. Funkce musí být
definována dříve než bude použita. Příkaz export
lze použít i
pro funkce, ale musí být zapnutý mód allexport
.
$ set -o allexport
|
Funkcím můžeme předávat argumenty stejně jako skriptům a získáváme
je stejným způsobem jako u skriptů. Příkaz return
ukončí
funkci a vrací její návratovou hodnotu ve formě celočíselného argumentu.
Po dokončení funkce jsou poziční argumenty skriptu
($#
, $@
...) obnoveny (u starších shellů to
tak být nemusí).
$ funkce_s_argumenty() {
|
Budeme-li chtít vrátit řetězcovou hodnotu, můžeme to udělat např. níže uvedeným způsobem.
#!/bin/bash vrat_retezec() { echo "Řetězec" } promena=$(vrat_retezec) echo $promena exit 0 |
Pomocí klíčového slova local
můžeme také vytvořit lokální
proměnné funkce. Jestliže bude existovat globální proměnná se stejným
názvem, bude ve funkci potlačena.
#!/bin/bash jedna="První globální proměnná" dva="Druhá globální proměnná" lokalni_promena() { local jedna="První lokální proměnná" echo $jedna echo $dva } lokalni_promena echo $jedna echo $dva exit 0 |
Příkazy můžeme rozdělit na zabudované a normální. Zabudované příkazy nemůžeme spustit jako externí programy, ale většinou mají své ekvivalenty ve formě externích programů. Normální příkazy jsou externí programy a jejich vykonání je pomalejší než u zabudovaných příkazů.
break
- vyskočí z cyklu:
- nulový příkazcontinue
- spustí další iteraci cyklu.
- provede příkaz v aktuálním shellueval
- vyhodnotí zadaný výrazshift
- posune poziční parametryread
- načte uživatelský vstup, jako argument se
použije název proměnné, do které se má uložitstty
- mění a vypisuje charakteristiky terminálové
linkyexec
- spustí nový shell nebo jiný zadaný program
a nebo upraví deskriptor souboruexit n
- ukončení skriptu s návratovým kódem n
(n = 0 - úspěšné ukončení, n = 1 až 125
- chyba, ostatní n jsou rezervovány)printf
- není dostupný ve starých shellech a při vytváření
formátovaného výstupu byste mu měli dávat přednost před příkazem
echo
podle specifikace X/OpenNa skriptu prikazy.sh
si ukážeme použití některých výše
uvedených příkazů.
#!/bin/bash for i in 10 20 30 40 50; do if [ $i -eq 40 ]; then break elif [ $i -eq 20 ]; then continue else : fi echo $i done a="abc" nazev_promene="a" promena='$'$nazev_promene echo $promena eval promena='$'$nazev_promene echo $promena while [ "$1" ]; do echo $1 shift done exec date echo "Tato část již nebude provedena!" exit 0 |
Nezapomeneme skript spustit s několika argumenty.
$ ./prikazy.sh první druhý třetí
|
Nyní si ukážeme interaktivní skript read.sh
,
který požádá uživatele o zadání přihlašovacího jména a hesla.
Heslo se nebude vypisovat na obrazovku.
#!/bin/bash echo -n "Přihlašovací jméno: " read jmeno echo -n "Heslo: " # Vypne výpis vstupních znaků stty -echo read heslo # Zapne výpis vstupních stty echo echo if [ "$jmeno" == "fuky" ] && [ "$heslo" == "heslo" ]; then echo "Kód: Příšerně žluťoučký kůň úpěl ďábelské ódy" else echo "Nemáte oprávnění k vypsání kódu" fi exit 0 |
Zadáme-li správné údaje, získáme kód.
$ ./read.sh
|
Na závěr tohoto dílu si ukážeme použití konstrukce
select proměnná in hodnota1 ... hodnotaN; do příkazy; done
.
#!/bin/bash echo "Zadejte vaše pohlaví" select pohlavi in muž žena; do if [ "$pohlavi" ]; then echo "Jste $pohlavi" break else echo "$REPLY je nedefinovaná odpověď" fi done exit 0 |
Po spuštění příkazu select
je uživatel vyzván, aby
zadal číslo jedné z hodnot (hodnota1 ... hodnotaN
v našem
případě muž
nebo žena
).
proměnná $REPLY
obsahuje vždy hodnotu uživatelského vstupu.
proměnná $pohlavi
obsahuje hodnotu pouze v případě, že číslo
odpovídá jedné z voleb. Dotaz se opakuje, dokud se neprovede
v těle příkaz break
.
$ ./select.sh
|
Nástroje: Tisk bez diskuse
Tiskni
Sdílej: