Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.
Byla vydána verze 5.30 dnes již open source operačního systému RISC OS (Wikipedie).
V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …
Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.
Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.
Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.
Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.
Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.
Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.
Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.
píši si jednořádkový příkaz, ale narazil jsem na problém. Vysvětlí mi někdo, jaktože toto pracuje:
#!/bin/sh if [ 0 ] ; then echo jop; fi exit 0
Ale v řádce ne?
# if [ 0 ] ; then echo jop; fi
A jak to tedy mám správně zapsat, aby byl stejný výsledek?
Zkoušel jsem různě uvozovat backslashem, ale asi nemůžu najít správnou kombinaci
[petr@nt ~]$ cat pokus.sh #!/bin/sh if [ 0 ]; then echo jop ; fi [petr@nt ~]$ ./pokus.sh jop [petr@nt ~]$Jinak viz: BASH - III
[petr@nt ~]$ if [ 0 ]; then echo "jop"; fi
if [ 0 ]; then echo "kkt"; fi
find . -type f -exec if [ 0 ] ; then echo jop ; fi \;
find . -name "*.txt" -exec bash -c 'if [ 0 ] ; then echo jop ; fi' \;
[petr@nt ~]$ if [ 0 ]; then echo "jop"; fi jop [petr@nt ~]$
jop
a…a jop
.
$(command)
neuspějete (Vyjma Oracle Solaris 11 Express, kde /*bin/sh je link na KSH93).
Nejen Linuxem živ jest člověk, pokud to není nezbytně nutné, není od věci udržet si maximální kompatibilitu. V tomto případě např. pokud nezbytně nepotřebuji vnořené příkazy, použiji `command`
, ne $(command)
(i když zde by mohl padnout ještě estetický argument a samozřejmě otázka čitelnosti).
Já osobně pointu pisatele chápu jako upozornění, že není dobré bezhlavě věřit, že vše, na co jsem v Linuxu zvyklý mi bude všude fungovat, když použiji /bin/sh. Pokud mi jde o bash syntaxi, lépe neříkat #!/bin/sh
, ale #!/bin/bash
, protože výslovně vyjádřím to, co jsem zřejmě předpokládal. Prostě rozšiřoval obzory a to je podle mě dobře, ne špatně.
Tohle už není záležitost shellu, ale obvykle je dobrým zdrojem zábavy posadit Linuxového uživatele/admina před Solaris a říct mu, by zabil všechny procesy s daným jménem. ;)
Minimálně na Solarisu … třeba zrovna s $(command)
neuspějete … Nejen Linuxem živ jest člověk
Ta konstrukce je součástí POSIX specifikace, takže je-li tomu tak, je to jednoznačně chyba Solarisu.
$ /bin/sh $ uname -sr SunOS 5.10 $ echo $(ls) syntax error: `(' unexpected $
DASH is a POSIX-compliant implementation of /bin/sh that aims to be as small as possible.A blbe to pochopil :-P
Tiskni Sdílej: