Byly publikovány informace (technické detaily) o bezpečnostním problému Snapu. Jedná se o CVE-2026-3888. Neprivilegovaný lokální uživatel může s využitím snap-confine a systemd-tmpfiles získat práva roota.
Nightingale je open-source karaoke aplikace, která z jakékoliv písničky lokálního alba (včetně videí) dokáže oddělit vokály, získat text a vše přehrát se synchronizací na úrovni jednotlivých slov a hodnocením intonace. Pro separaci vokálů využívá UVR Karaoke model s Demucs od Mety, texty písní stahuje z lrclib.net (LRCLIB), případně extrahuje pomocí whisperX, který rovněž využívá k načasování slov. V případě audiosouborů aplikace na
… více »Po půl roce vývoje od vydání verze 49 bylo vydáno GNOME 50 s kódovým názvem Tokyo (Mastodon). Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.
Článek na stránkách Fedora Magazinu informuje o vydání Fedora Asahi Remixu 43, tj. linuxové distribuce pro Apple Silicon vycházející z Fedora Linuxu 43.
Byl zveřejněn program konference Installfest 2026. Konference proběhne o víkendu 28. a 29. března v Praze na Karlově náměstí 13. Vstup zdarma.
Byla vydána Java 26 / JDK 26. Nových vlastností (JEP - JDK Enhancement Proposal) je 10. Odstraněno bylo Applet API.
Byla vydána nová verze 260 správce systému a služeb systemd (Wikipedie, GitHub). Odstraněna byla podpora skriptů System V. Aktualizovány byly závislosti. Minimální verze Linuxu z 5.4 na 5.10, OpenSSL z 1.1.0 na 3.0.0, Pythonu z 3.7.0 na 3.9.0…
Byla vydána nová verze 5.1 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v poznámkách k vydání. Videopředstavení na YouTube.
Bylo oznámeno vydání nové verze 8.1 "Hoare" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Doprovodný příspěvek na blogu Khronosu rozebírá kódování a dekódování videa pomocí Vulkan Compute Shaders v FFmpeg.
Byl představen open-source a open-hardware prototyp nízkonákladového raketometu kategorie MANPADS, který byl sestaven z běžně dostupné elektroniky a komponent vytištěných na 3D tiskárně. Raketa využívá skládací stabilizační křidélka a canardovou stabilizaci aktivně řízenou palubním letovým počítačem ESP32, vybaveným inerciální měřicí jednotkou MPU6050 (gyroskop a akcelerometr). Přenosné odpalovací zařízení obsahuje GPS,
… více »ps aux | grep -v "grep" | grep -q "/home/foo.sh" if [ $? -eq 0 ]; then exit else # echo "pokračuji.." fi
if [$res -lt 2 ]ale nevím jak na to..
if [ $(pgrep -c foo.sh) -eq 0 ]; then
echo nebezi
else
echo bezi
fi
Aj takto je vysledok 0 ? :
#! /bin/bash
if [[ "$(pgrep -c "${0##*/}")" -eq 0 ]]
then
echo nebezi
else
echo bezi
fi
Ja len, ci si nezabudol zamenit foo.sh za nazov tvojho skriptu. Nic v zlom, sa mi aj horsie uz stalo. :)
Ano, stává se to i měJa len, ci si nezabudol zamenit foo.sh za nazov tvojho skriptu. Nic v zlom, sa mi aj horsie uz stalo. :)
ale v tomto případě se to opravdu soubor tak jmenuje. No pokud v tom tvém kodu změním -eq 0 za -eq 1 tak to funguje jak má.. Díky moc
Akurat, ze to v tom pripade nefunguje. Logicky je to nespravne, bo ak je pocet beziacich procesov s tymto nazvom rovny 1, tak dalsi uz nespustim a ak je rovny 0, tak ho spustim a toto je presne moj kod a tvoje zadanie.
Skus dat do svojho kodu nasledovne:
echo '==== kontrola ===='
echo "skript: $0"
echo "vypis procesov:"
ps xau | grep "${0##*/}"
echo '=== koniec ===''
a na zaciatok skriptu, hned za shebang daj
set -x
a daj sem vsetko, co to vypluje.
root@debian:~# ./foo.sh ++ echo '==== kontrola ====' ==== kontrola ==== ++ echo 'skript: ./foo.sh' skript: ./foo.sh ++ echo 'vypis procesov:' vypis procesov: ++ grep foo.sh ++ ps xau root 13932 0.0 0.0 6544 880 pts/2 S+ 17:09 0:00 grep foo.sh ./foo.sh: řádek 7: neočekávaný konec souboru při hledání znaku odpovídajícímu „'“ ./foo.sh: řádek 8: chyba syntaxe: nenadálý konec souboru root@debian:~#
Skor som mal na mysli, ze by si to pridal k tomu svojmu kodu, mozno by sa ukazalo, co sa skutocne deje. U mna to funguje spravne a este minimalne dalsi clovek z tohto vlakna to potvrdil. A najlepsie, tak s uz spustenym procesom a bez taktiez.
if [[ "$(pgrep -c "${0##*/}")" -eq 0 ]]
zkoušel jsem to takto ale nejde to
if [[ "$(pgrep -c "foo.sh")" -eq 0 ]]díky
Ak pouzijes premennu, tak sa nemusis nikdy starat. Ak to das napevno, tak niekomu das kod, pomenuje si skript inak a uz to nepojde, ako ma. A prechadzat skript, ze kde to este je pouzite, ze mi to pada stale, neviem, su aj zaujimavejsie veci, co riesit. Inak napevno, ako si to ukazal, neviem.
p.s.: Ak ti to bezi s jednickou, tak niekde musi byt zrada, ale kod tu cely nie je. Takze to je na tebe.
To nie je ziaden problem, vid nasledujuce (dva skripty, jeden test1.bash a druhy test2.bash ):
#! /bin/bash
source test2.bash "$0"
echo "nazov skriptu z test1.bash: ${0##*/}"
#! /bin/bash
echo "nazov hlavneho skriptu zo sourcovaneho test2.bash: ${1##*/}"
Jednoducho je to iba o predavani parametrov.
if [[ "$(pgrep -c "${0##*/}")" -eq 0 ]]
za tohle
if [[ "$(pgrep -c "foo.sh")" -eq 0 ]]tak to přestane fungovat, proc? Díky
Tiskni
Sdílej: