Oficiální český státní eshop s elektronickými dálničními známkami nově najdete na edalnice.gov.cz. Doména gov.cz jasně potvrzuje, že jste na oficiálním státním webu [𝕏].
Byla vydána nová verze 4.8.0 interaktivního shellu fish (friendly interactive shell, Wikipedie). Přehled novinek v poznámkách k vydání.
Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem se nově stal čínský LineShine v Národním superpočítačovém centru v Šen-čenu (NSCS) s výkonem 2,198 exaFLOPS. Z prvního místa sesadil americký superpočítač El Capitan s výkonem 1,809 exaFLOPS. Nejvýkonnější český počítač C24 klesl na 215 místo. Karolina, GPU partition klesla na 249. místo a Karolina, CPU partition na 475. místo.
… více »Zemřel průkopník videoherní hudby Bobby Prince (Wikipedie). Složil hudbu pro hry Wolfenstein 3D, Doom, Doom II, Duke Nukem II a Duke Nukem 3D.
Počítačová hra Operace Flashpoint (Arma: Cold War Assault) od společnosti Bohemia Interactive slaví 25 let. Při této příležitosti bylo publikováno bezplatné hratelné Arma: Cold War Assault Remastered Demo a na GitHubu byly zveřejněny zdrojové kódy.
Na trh v České republice přichází HP EliteBoard G1a. Jde o plnohodnotný AI počítač integrovaný přímo do těla klávesnice, tedy zařízení, které na první pohled vypadá jako minimalistická klávesnice, ale ve skutečnosti nahrazuje klasickou počítačovou jednotku.
V lednu bylo oznámeno, že desktopové prostředí Xfce bude mít vlastní kompozitor pro Wayland s názvem xfwl4. O víkendu byla vydána první preview verze.
Minulý týden byl oficiálně vydán Android 17. Detaily na blogu a stránkách věnovaných vývojářům.
Dnes jde do prodeje zařízení Steam Machine. Steam Machine 512 GB za 1 039 EUR a Steam Machine 2 TB za 1 359 EUR. Do čtvrtka 25. června do 19:00 se lze zapsat na seznamy. Ty budou jednorázově náhodně slosovány, čímž bude určeno pořadí rezervací a čekacích listin.
Vývojáři OpenMW (Wikipedie) oznámili vydání verze 0.51.0 této svobodné implementace enginu pro hru The Elder Scrolls III: Morrowind. Přehled novinek v oznámení o vydání a také na YouTube a PeerTube.
#!/bin/bash echo "Třeba něco vypisuji."Pokud byste chtěl používat parametry typu
-o abc, podívejte se na man getopt.
#!/bin/bash
#parsování parametrů příkazové řádky
PARAMETRY=`getopt -q -o o:h:s:v: -- "$@"`
if [ $? != 0 ] ; then echo "Chybně zadané parametry" ; exit 1 ; fi
eval set -- "$PARAMETRY";
#připravení výchozích hodnot proměnných
DIR="comments"
HOD="hodnoceni.txt"
STUD="students.txt"
while true ; do
case "$1" in
-o) DIR="$2" ; shift 2;;
-h) HOD="$2" ; shift 2;;
-s) STUD="$2" ; shift 2;;
-v) if [ -n "$2" ] ; then VAR="$2" ; fi ; shift 2;;
--) shift ; break ;;
*) echo "Neznámý parametr" ; exit 2 ;;
esac
done
#nyní máte v proměnných $DIR, $HOD, $STUD, $VAR potřebné hodnoty (případně $VAR není definována)
echo $DIR
echo $HOD
echo $STUD
echo ${VAR:-"-- nezadáno --"}
Pomůžou vám k tomu man bash, man getopt, man test
Zde je žádaný kanón na vrabce 
volby="-o tl:"
getopt -Qq $volby -- "$@" || exit 1;
eval set -- `getopt -q $volby -- "$@"`;
...
while [ $# -gt 1 ]; do
case $1 in
-l) něco, když je -l param; shift 2;;
-t) parametr -t; shift 1;;
*) něco jíného; shift;;
esac
done
#!/bin/bash volby="-o t1:" getopt -Qq $volby -- "$@" || exit 1; eval set -- `getopt -q $volby -- "$@"`; while [ $# -gt 1 ]; do case $1 in -l) echo "tohle je parametr l"; shift 1;; -t) echo "parametr -t"; shift 1;; *) echo "něco jiného"; shift;; esac donetakhle jsem to přepsal, ale po spuštění a zadání například ./pokus.sh -l mi to nic nevypíše, ale třeba pro -t ano. nevíte kde je zrada?
volby="-o t1:"tam dej:
volby="-o tl:"(dvojtečka za "l" znamená, že ten přepínač bude chtít argument)
Zrada je také v prvním použití getopt s parametrem pro tichý výpis a také, že pokud selže, tak se celý skript ukončí (|| exit 1;).
#!/bin/bash
TEMP=`getopt -o o: -n 'ukazka2' -- "$@"`
if [ $? != 0 ] ; then echo "Koncim..." >&2 ; exit 1 ; fi
eval set -- "$TEMP"
while true ; do
case "$1" in
-o) echo "Volba o, argument \`$2'" ; shift 2 ;;
--) shift ; break ;;
*) echo "Internal error!" ; exit 1 ;;
esac
done
echo "Zbyvajici argumenty:"
for arg do echo '--> '"\`$arg'" ; done
V originalni verzi najdete i spoustu vysvetlujich komentaru. Spis bych doporucil vydat se timto smerem.
A kde je tam vidíte?
Spis bych doporucil vydat se timto smerem.
Naprosto souhlasím, ten můj původní kód jsem totiž pouze vykopíroval z jednoho skriptu a pouze doplnil komentáře - do skriptu se totiž vše předávalo pomocí voleb, takže jsem část za (případným) -- s klidem ignoroval.
getopt -Qq $volby -- "$@" || exit 1; eval set -- `getopt -q $volby -- "$@"`;
getopt -Qq $volby -- "$@" || exit 1;
Spustí getopt s danými volbami a otestuje jejich správnost (a v případě chyby nic nevypíše) - pokud nastane chyba (neznámý parametr atp.), tak je skript ukončen (spojka ||).
eval set -- `getopt -q $volby -- "$@"`;
Nastaví upravené parametry (tj. např. -ab rozdělí na 2 samostatné: -a a -b atd.) do proměnných $1, $2 ...
Tiskni
Sdílej: