Microsoft Defender nově podporuje linuxové desktopy.
Oficiální Epic Games Launcher je v nové preview verzi poprvé dostupný i pro Linux (FAQ). Pracuje se na novém Easy Anti-Cheatu pro Linux (EAC Linux v2) a podpoře hry Fortnite na Linuxu.
Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.8. Novinky zahrnují lepší podporu vzdálené plochy, sdílení a nahrávání obrazovky a řadu drobností napříč uživatelským rozhraním (úplný seznam změn, shrnutí ve wiki).
Apple představil 7palcový displej Apple HomeView s podporou Apple Intelligence a Siri AI pro ovládání chytré domácnosti, novou řadu vybavení chytré domácnosti Apple Home Collection, další generaci HomePodu mini a novou Apple TV 4K. Apple HomeView není v Evropské unii v prodeji, jelikož umělá inteligence Siri v rámci systému iOS v EU momentálně není k dispozici. Apple spolupracuje s EU a snaží se najít cestu, jak situaci vyřešit.
KDE slaví 30 let. Přesně před 30 lety, 14. října 1996, poslal Matthias Ettrich do diskusní skupiny comp.os.linux.misc zprávu, která započala historii projektu KDE. Důležité milníky jsou zobrazeny na časové ose.
Byl vydán Mozilla Firefox 158.0. Stejně jako Chrome 155 s podporou JPEG XL (test). Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 158 bude brzy k dispozici také na Flathubu a Snapcraftu.
Svobodný kancelářský balík ONLYOFFICE (Wikipedie) byl vydán ve verzi 10.0. Jak online Docs, tak i offline Desktop Editors. Přehled novinek také na YouTube.
Mozilla představuje Firefox Enterprise určený jako podnikový prohlížeč pro organizace s přísnými požadavky na bezpečnost, správu a dodržování předpisů. S profesionální podporou. Dostupný je zatím ve Francii, Německu, Rakousku a Švýcarsku.
Kybernetický útok zasáhl nejméně 150 supermarketů Intermarché a několik prodejen řetězců Leclerc a Coopérative U. Chladicí jednotky napadených obchodních domů byly nastaveny na nepřetržité odmrazování a teplota v nich mnohdy vystouala až nad 50°C. Škody napáchané na chlazeném a mraženém zboží budou patrně dosahovat miliónů eur.
… více »Stát Kalifornie zažaloval výrobce 3D tiskových filamentů Polymaker. Vrchní soud San Diego County tvrdí, že firma propagací svých výrobků mezi příznivci 3D tištěných zbraní podporovala výrobu takzvaných 'ghost guns' (DIY zbraní) a že její PLA filament pro 3D tiskárny lze za těchto okolností považovat za součást určenou k výrobě střelné zbraně. Žaloba požaduje mimo jiné finanční sankce a soudní zákaz činnosti, Polymaker se hájí tím, že filament je běžný a sám o sobě legální produkt. Celý text žaloby (PDF na Google Drive).
Chtel bych vedet, jak se to dela spravne. Procetl jsem par Bash Programming Howtos, ale nejak jsem nenasel odpoved.
Chci dosahnout aby mi funkce vratila hodnotu.
Vetsinou jsou vsude priklady, jak vratit ciselnou hodnotu, ale to nepracuje na string.
Zajima me tedy, jak vratit string/character hodnotu z funkce a jestli je to dobra practice?
Zda se vam, ze to delam spravne nebo ne:
#!/bin/bash
f_change () {
local changedWord=""
echo -e "give me word: "
read changedWord
echo $changedWord
eval $1=$changedWord
}
test="super"
echo -e "var before: $test"
f_change test
echo -e "Returned from function: $test"
eval… napište:
test "$1" = "$changedWord"Návratová hodnota funkce či jiného příkazu se ukládá do proměnné
$?, můžete ji přidat do posledního výpisu. Pravdivost je trochu neobvykle reprezentována hodnotou 0 a nepravdivost 1. Je tomu tak proto, že nula je návratovým kódem příkazů provedených úspěšně, zatímto nenulové hodnoty značí nesplnění úkonu, chybu.
Samozrejme je to zjednoduseny priklad. Jen me zajima, jak pasnout string a return string. Protoze u ciselnych hodnot se pouziva return, ale to na string nejak nefungovalo.
Jo jeste bych se chtel zeptat, proc "test". Jakou to ma funkci. Kdyz me odkaze na cteni, tak je to ok. Nic takoveho jsem na webu nenasel. Hledal jsem "bash programming function".
Mozna jeste jaky je rozdil v eval a test v tomto pripade. Vsechny ukazky scriptu co jsem nasel uvadely jen eval.
To je proto, že jsem si neuvědomil, že chcete, aby funkce vracela řetězec. Po té mnou navrhované změně by funkce porovnávala zadaný parametr s řetězcem získaným ze standardního vstupu, což je něco úplně jiného. Vracet řetězec není možné. Jednou z cest je to, co už tu bylo psáno:
function vstup() {
echo -n "Zadej něco: " 1>&2
read str
echo $str
}
HODNOTA="$(vstup)"
echo "Byl zadán tento řezězec: \"${HODNOTA}\""
Je třeba přesměrovat první echo na chybový výstup, protože funkce na standardní výstup pošle načtenou hodnotu.
Postupovat lze samozřejmě i jinak, totiž „změnit hodnotu proměnné“.
function vstup() {
echo -n "Zadej něco: " 1>&2
read $1
}
vstup HODNOTA
echo "Byl zadán tento řezězec: \"${HODNOTA}\""
function test(){
echo "result"
}
local v=$(test)
Na spouste webech se pise prave pres tu globalni promenou. Ale to se mi zda dost neprakticke. Chci mit funkci univerzalni, bez toho aniz by byla zavisla na globalni promene. Ale nevim jestli se to v Bash programovani da. Teda asi jo, viz muj priklad, ale nevim, jestli je to OK.
V C, Jave, atd, je normalni pasnout a vratit promene.
Nejsem velky programator, ale na vejsce jsem pres to prosel.
deb http://ftp.cz.debian.org/debian jessie main contrib non-freef() {
return $1
}
f 5
[[ $? == 5 ]] && echo hura
alebo ako radi kolega pnemec vyssie. Bash bezne nerozlisuje medzi textovou a ciselnou hodnotou. Preto mi v prikalde funguje test $? == 5 (textove porovnanie) a fungovalo by aj $? -eq 5 (cislene porovnanie). V podstate vsetko je text (ak nie je deklarovane inak), dokym sa k tomu neprisutpuje ako k cislu. Doporucujem man bash.
Dovolim si s vami nesouhlasit
Priklad, ktery jste uvedl plati jen pro ciselne hodnoty. Vyzkousejte si pasnout do funkce nejake slovo a return to nevrati.
Prave proto se tu ptam. Na internetu jsem toho precetl furu, ale moc nic nemuzu sehnat, protoze vsude jsou priklady jen na ciselne hodnoty.
Samozrejme to co jsem napsal je jen zjednoduseny priklad priklad.
Jedine co jsem nejak dal dohromady, je to co jsem tu napsal jako priklad. Proto jsem se zeptal jestli je to spravne, nebo jestli se to da udelat nejak lepe.
Co takhle, kdyby jste si to vyzkousel
. Jinak diky za snahu.
Funkce může vracet pouze celočíselnou hodnotu, pro přirovnání je to asi stejné jako kdyby jsi chtěl, aby návratová hodnota programu byl řetězec. Dívej se na to tak, že Bash funkce je program a její návratová hodnota informuje o jeho úspěšném/neúspěšném ukončení.
Jinak jak Ti radí výše, lze získat i řetězec pomocí echo.
Co se týče hledání a příkladu, tak ten je přímo tady na Ábíčku Funkce a příkazy
f() { echo $1; }
A=$(f xxx)
echo Return code: $?
echo Return value: $A
Tiskni
Sdílej: