Zero Day Initiative zveřejnila informace o 6 bezpečnostních chybách (1, 2, 3, 4, 5, 6) v MTA Exim. Nejvážnější z nich CVE-2023-42115 má CVSS 9.8. Na opravě chyb se pracuje.
Knihovna libvpx byla vydána ve verzi 1.13.1. Řešena je kritická bezpečnostní chyba CVE-2023-5217 (heap buffer overflow in vp8 encoding). Chyba je již opravena také v Chrome / Chromium 117.0.5938.132 a Firefoxu 118.0.1.
Balíček kmod s nástroji pro práci s linuxovými moduly byl vydán ve verzi 31. Nově umí modprobe zavést modul nacházející se v libovolném adresáři (# modprobe ./drivers/gpu/drm/i915/i915.ko).
Adventura Trüberbrook je na portále GOG.com zdarma, akce trvá do 2. října.
Sound Open Firmware, projekt Linux Foundation, open source audio DSP firmware a SDK, byl vydán ve verzi 2.7.0. Z novinek lze vypíchnout podporu platformy AMD Van Gogh.
Richard Stallman v den oslav 40. výročí GNU oznámil, že má rakovinu (YouTube).
DIY trackball Ploopy má novou variantu Adept, na rozdíl od předchozích používá 44mm kouli, má symetrický tvar a šest tlačítek, snímač zůstává PMW-3360, novinkou je použití Raspberry Pi Pico, na kterém běží firmware QMK s podporou grafické konfigurační aplikace VIA. Předobjednávky jsou otevřeny za ceny 80-105 CAD.
Probíhá Meta Connect 2023. Společnost Meta představuje své novinky v oblasti AI a virtuální, smíšené a rozšířené reality. Představeny byly nové chytré brýle Ray-Ban | Meta a headset Meta Quest 3.
Eben Upton oficiálně představil (YouTube) nové Raspberry Pi 5 (YouTube). Je více než 2x výkonnější než jeho předchůdce, model 4B.
Byl vydán (YouTube) Counter-Strike 2. Nativně také pro Linux. Jedná se o největší technologický skok v historii této populární herní série.
[ $? == 1 ] || [ $? == 255 ] && rm -f $DIALOG; return
Řešení dotazu:
Protože je oddělen středníkem, takže nemá s předchozím složeným příkazem nic společného. Středník je víceméně ekvivalentní konci řádku.
Osobně bych se vykašlal na šetření znaky a upřednostnil srozumitelnost:
if [ $? = 1 -o $? = 255 ]; then rm -f "$DIALOG" return fi
Skládání operátorů ||
a &&
je strašně náchylné na chyby a je lepší se mu vyhnout.
[ $? = 1 -o $? = 255 ] && { rm -f "$DIALOG" return }
[ $? = 1 -o $? = 255 ] && { rm -f "$DIALOG" return } || { echo "Větev else" }
To je právě to, na co jsem narážel v první odpovědi:
A && B || C
lze použít pouze v případě, kdy máme jistotu, že B nemůže selhat (jako v tom vašem příkladu), jinak se provedou B i C.
To chování je logickým důsledkem pravidel, podle kterých ty operátory fungují:
A && B
se druhý příkaz provádí, pokud první vrátí nuluA || B
se druhý příkaz provádí, pokud první vrátí nenuluBohužel nadužívání ve skriptech často vede k tomu, že kdo ta pravidla nezná, bere operátory jako if-then a else a pak může být nemile překvapen.
-o
v daném místě není přepínač, ale operátor OR.
man testtak je to hned na první stránce společně s dalšími operátory.
test
.
info bash
je ještě možná lepší.
man [
Tiskni
Sdílej: