Finálový zápas mistrovství světa v ledním hokeji přinesl nový rekord NIX.CZ (𝕏): "Dosavadní absolutní maximum našeho propojovacího uzlu bylo překonáno v čase 21:10, kdy jsme při přenosu dat dosáhli 3,14 Tbps. Je třeba také doplnit, že po deváté hodině večerní byly na maximu i ostatní datové přenosy nesouvisející s hokejovým šampionátem".
Přihlaste svou přednášku na další ročník konference LinuxDays, který proběhne 12. a 13. října na FIT ČVUT v pražských Dejvicích. CfP poběží do konce prázdnin, pak proběhne veřejné hlasování a výběr přednášek.
Na crowdsourcingové platformě Crowd Supply byla spuštěna kampaň na podporu open source biometrického monitoru ve tvaru hodinek HealthyPi Move. Cena je 249 dolarů a plánovaný termín dodání listopad letošního roku.
Firma Murena představila /e/OS verze 2.0. Jde o alternativní sestavení Androidu bez aplikací Google. Mezi novinkami je podrobnější nastavení ochrany soukromí před sledováním aplikacemi. Murena prodává několik smartphonů s předinstalovaným /e/OS (Fairphone, repasovaný Google Pixel 5).
Do 30. května lze v rámci akce Warhammer Skulls 2024 získat na Steamu zdarma hru Warhammer 40,000: Gladius - Relics of War.
HelenOS (Wikipedie), tj. svobodný operační systém českého původu založený na architektuře mikrojádra, byl vydán ve verzi 0.14.1. Přehled novinek v poznámkách k vydání. Vypíchnou lze nabídku Start. Videopředstavení na YouTube.
BreadboardOS je firmware pro Raspberry Pi Pico (RP2040) umožňující s tímto MCU komunikovat pomocí řádkového rozhraní (CLI). Využívá FreeRTOS a Microshell.
Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 24.05. Přehled novinek i s náhledy a videi v oficiálním oznámení. Do balíku se dostalo 5 nových aplikací: Audex, Accessibility Inspector, Francis, Kalm a Skladnik.
Byla vydána (𝕏) nová verze 18.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.
# tar -c -T $seznam | bzip2 -9 >$sambacesta`date +%y_%m_%d`'.tar.bz2' && echo "Backup Done" || "Backup Failed"Proč toto nemůže fungovat? Díky
bzip2
.
tar -c -T $seznam | bzip2 -9 >$sambacesta`date +%y_%m_%d`'.tar.bz2' && echo "Backup Done" || echo "Backup Failed"Ale ani to nebude fungovat na návratovou hodnotu taru, protože se uvažuje vždy poslední návratová hodnota v koloně - v tomhle případě bzipu.
tar -cjvf -T $seznam soubor.tar.bz2 && echo "Backup Done" || echo "Backup Failed"Něco mi řiká, že tam je chyba v těch parametrech, že?
seznam=/home/user/list tar -cjvf soubor.tar.bz2 -T $seznam && echo "Backup Done" || echo "Backup Failed"Toto ovšem taky nefunguje :D
/home/user/list
, ale v rámci možností to u mě vypadá funkční.
seznam=/home/user/list tar -cjvf soubor.tar.bz2 -T $seznam && echo "Backup Done" || echo "Backup Failed" if [[ $? -eq 0 ]] then rob_nieco else rob_nieco_ine_ked_sa_to_nepodarilo fi
#! /bin/bash seznam=/home/user/list VytvorArchiv(){ # Echo vracia VZDY true, takze ak prebehne uspesne vytvorenie archivu, tak nie je nutne nic robit. tar -cjvf soubor.tar.bz2 -T "${1}" && echo "Backup Done" || ( echo "Backup Failed"; return 1 ) } if VytvorArchiv "${seznam}" then rob_nieco else rob_nieco_ine_ked_sa_to_nepodarilo fiTakto by to malo fungovat. Ale ak je to tento pripad, tak je to jednoznacne chyba zadavatela, kedze neposkytol dostatok informacii. ;)
&& ||
funguje podle očekávání:
~> true && echo ok || echo fail ok ~> false && echo ok || echo fail fail
Aj mne. Mozno som sa len nedostatocne vyjadril. Ale taketo nieco nefunguje a to je jediny pre mna zjavny dovod, preco by to zadavatelovi "nefungovalo":
patrik@debian-thinkpad:~$ true && echo ok || echo fail; [[ $? -eq 0 ]] && echo ok ok ok patrik@debian-thinkpad:~$ false && echo ok || echo fail; [[ $? -eq 0 ]] && echo ok fail ok
Ja len vravim, ze nemoze pouzit nieco taketo a vraviet, ze tar vracia nespravnu navratovu hodnotu:
#! /bin/bash true && echo ok || echo fail if [[ $? -eq 0 ]]; then rob_nieco; else rob_nieco_ine; fi
Takto to totiz nebude nikdy fungovat skrz pouzitia echo, ktory ma vzdy navratovu hodnotu 0 a teda maskuje navratovu hodnotu true resp. akehokolvek prikazu pred echo-m v kolone. Da sa to vsak vyriesit napr. aj nasledovne:
#! /bin/bash Funkcia(){ true && echo ok || ( echo fail; return 1 ) } if funkcia; then rob_nieco; else rob_nieco_ine; fi
To je podla mojho nazoru dovod, preco tu zakladatel stale tvrdi, ze mu tar nevracia spravnu navratovu hodnotu. A to je zaroven aj pointa mojho predchadzajuceho prispevku.
tar && echo || echo
To co kolegové řešili ohledně návratové hodnoty v koloně byl problém tar | bzip && echo || echo
, kde tar
a bzip
jsou v koloně tar | bzip
a následné příkazy echo
se řídí návratovou hodnotou bzip
u, nikoliv tar
u.
tar && echo || echo
není kolona (v obvyklém smyslu slova, tak byste to tedy nazývat neměl, pokud nejste z Babylonu. Před echome tedy nic v koloně není), je to sled příkazů, po jejich provedení je k dispozici návratová hodnota posledního znich (jedno z ech
), jak jste správně řekl.
Další věc je, že konstrukce A && B || Cje ve skutečnosti
if (A && B) then B; else C; fi, ale v případě přikazů jako echo se to zanedbává, neb většinou fungují.
Nereagoval som na temu po tento prispevok: https://www.abclinuxu.cz/poradna/linux/show/336497#6
To bol dovod a myslim, ze stale je dovodom, preco som vyvodil z toho zaver, aky som vyvodil a myslim, ze pravom som sa domnieval, ze tam nasleduje kontrola v dalsom kode na navratovu hodnotu. Ale pockajme si na zakladatela temy.
Co sa tyka kolony, z Babylonu nie som. :) Popravde som sa nad vyznamom slova nezamyslal az natolko. Viac som sa snazil tu udrzat nejake jednotne nazvoslovie, ktore Jenda nastolil. Jenda ho vsak pouzil spravne, teda pokial tu budeme sledovat vase vysvetlenie ohladne kolony ( logicke vysvetlenie ), pretoze on spominal aj bzip v case pisania toho jeho prispevku. Inak by som temer isto pouzil sled prikazov pred kolonou.
Takze cele moje posobenie v tejto teme nie je o tom, ci vracia tar spravnu navratovu hodnotu alebo nie, kedze je jasne, ze vracia spravnu. Ale o implementacii kodu do nejakeho vacsieho celku a k tejto teorii mi nahrava prave vyssie zmienovany odkaz.
Další věc je, že konstrukceNe, to není, protože to druhé by ve skutečnosti (pokud by vše končilo úspěchem) udělalo ABB či ABC (pokud by končilo neúspěchem), zatímco první udělá jen AB, případně AC.A && B || Cje ve skutečnostiif (A && B) then B; else C; fi, ale v případě přikazů jako echo se to zanedbává, neb většinou fungují.
if (A && B) then :; else C; ficož je sice přesnější, ale zase ne tak srozumitelné. Podstatné na co jsem chtěl upozornit je, že výpis C závisí na pozitivní návratové hodnotě B, k čemuž u
if-A-then-B-else-C
nedochází. U echa je to jedno, ale někdo by třeba dokázal napsat i (pseudokód:)
rar && rm .lock || touch .rar-failedcož už může vytvořit .rar-failed i v případě, že rar proběhne ok.
PIPESTATUS
.
bash$ true | false | true bash$ echo ${PIPESTATUS[1]} 1 # to je to false
tar -cjf foo.tar.bz2 bar/NN
Tiskni Sdílej: