abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 20:44 | Zajímavý článek

    Jean-Baptiste Kempf na svém blogu představil novou verzi 9.0 "Lei" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    dnes 20:11 | Komunita

    Richard Hughes oznámil, že službu Linux Vendor Firmware Service (LVFS) umožňující aktualizovat firmware zařízení na počítačích s Linuxem, nově sponzoruje také společnost NVIDIA.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | Zajímavý software

    Edvard Rejthar na blogu zaměstnanců CZ.NIC představil svou aplikaci SlideRshow (GitHub). Funguje jako prohlížeč fotek, ale i jako jejich organizér a prezentátor. Neinstaluje se, běží přímo v prohlížeči. Bez serveru. Offline.

    Ladislav Hagara | Komentářů: 0
    dnes 11:44 | Nová verze

    Kermit, tj. protokol pro přenos souborů, vznikl před 45 lety. Při této příležitosti byla po 15 letech od vydání poslední stabilní verze 9.0.302 vydána nová stabilní verze 11 implementace C-Kermit. S podporou IPv6.

    Ladislav Hagara | Komentářů: 0
    dnes 11:11 | Zajímavý článek

    První verze konverzního nástroje Pandoc byla vydána před 20 lety. Jeho autor John MacFarlane při tomto výročí rekapituluje jednotlivé etapy vývoje a přidávání nových funkcí – rozšíření nejen Markdownu a podporu mnoha dalších formátů.

    |🇵🇸 | Komentářů: 0
    dnes 00:55 | Pozvánky

    Srpen přinesl nejen další spalující vedro, ale také Virtuální Bastlírnu s neméně žhavými novinkami. Využijte tedy předpovědi na deštivý čtvrteční večer a od 20:00 se připojte online k tomuto neformálnímu setkání kutilů, techniků a vědců, kde se strahovskými bastlíři proberete nejzajímavější věci, na které jste narazili za poslední měsíc. Pokud jde o novinky, řeč zcela jistě přijde na systém INDX pro tiskárny Průša, který na konci

    … více »
    bkralik | Komentářů: 0
    včera 17:22 | Zajímavý článek

    Firma T-Mobile blokovala „dezinformační web“ AC24 bez toho, aniž by k tomu měla závazný pokyn orgánů veřejné moci. Píše to ve svém rozsudku Městský soud v Praze, který po čtyřech letech uzavřel kauzu blokace zmíněného webu. Operátor musí uhradit škodu ve výši 35 tisíc korun. Advokát společnosti T-Mobile se snažil i u odvolacího senátu argumentovat tím, že firma jednala v dobré víře, když na stránky omezila přístup poté, co ji k tomu vyzvalo

    … více »
    Ladislav Hagara | Komentářů: 19
    včera 16:33 | IT novinky

    Padla obžaloba v bitcoinové kauze. Státní zástupkyně chce pro Blažka 6,5 roku vězení, pro Titze 8 let.

    Ladislav Hagara | Komentářů: 1
    včera 15:22 | IT novinky Ladislav Hagara | Komentářů: 3
    včera 14:22 | Komunita

    Na GitHubu byl publikován seznam 55 kritických bezpečnostních chyb v SQLite s přiřazenými CVE čísly. JFrog Security informuje, že se jedná jenom o AI slop, části kódu na které CVE odkazují, v daných verzích vůbec neexistují. Upozorňuje také, že čísla CVE jsou přiřazována bez ověřování.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (18%)
     (30%)
     (6%)
     (6%)
     (2%)
     (15%)
     (23%)
    Celkem 2322 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: posielanie "signalov" medzi beziacimi bash scriptami

    17.10.2011 15:28 eth4rendil | skóre: 13
    posielanie "signalov" medzi beziacimi bash scriptami
    Přečteno: 350×
    Dobrý deň,

    chcel by som sa spýtať. Je možné medzi bežiacimi bash scriptami posielať premenné. Teda napr. script xy je spustený 10 krát s iným argumentom. Teda jeden script odošle druhému "signál" ktorým si druhý zmeni napr. premennú. Blbo sa mi to vysvetluje radšej príklad :) :

    main.sh:
    #!/bin/bash
    
    ARGUMENTS=( arg1 arg2 arg3 arg4 arg5 )
    
            for ARGUMENT in ${ARGUMENTS[@]}
            do
                    ./slave.sh $ARGUMENT &
                    ./slave.sh $ARGUMENT &
            done
    
    slave.sh:
    #!/bin/bash
    
    ARGUMENT=$1
    
    while [ 1 ]
    do
            echo $ARGUMENT 
            sleep 30
    done
    
    main.sh spustí 10 krát script slave.sh s rôznymi argumentami. Ciel je aby script napr. "slave.sh arg1" odoslal signál na zmenu premennej napr. "slave.sh arg2" a ten premennu zmenil... Jedine čo ma napladlo je, že by sa premenne ukladali do dočasneho suboru s nazvom hodnota argumentu a od tial by si to slave.sh v každom cykle čital. Ale toto riešenie sa mi nezda moc dobré. Napadá Vás niečo? ďakujem

    Řešení dotazu:


    Odpovědi

    17.10.2011 15:58 NN
    Rozbalit Rozbalit vše Re: posielanie "signalov" medzi beziacimi bash scriptami
    Promennou muzes exportovat tak, ze ji subshell zdedi:
    export ARG=val
    NN
    17.10.2011 16:09 eth4rendil | skóre: 13
    Rozbalit Rozbalit vše Re: posielanie "signalov" medzi beziacimi bash scriptami
    dakujem. Ale slave.sh je subshell main.sh. Mne ide o odoslanie premennej medzi konkrétnymi slave.sh scriptami.
    Řešení 1× (eth4rendil (tazatel))
    17.10.2011 16:09 l4m4
    Rozbalit Rozbalit vše Re: posielanie "signalov" medzi beziacimi bash scriptami
    =====[ master.sh ]=====
    #!/bin/bash
    
    coproc bash slave.sh
    #echo $0: pid is ${COPROC_PID}
    #echo $0: output is ${COPROC[0]}
    #echo $0: input is ${COPROC[1]}
    queue=/dev/fd/${COPROC[1]}
    
    echo "A message" >$queue
    echo "Another message" >$queue
    sleep 5
    echo "A delayed message" >$queue
    
    =====[ slave.sh ]=====
    #!/bin/bash
    while read message; do
        echo "$0: Got a message: $message." 1>&2
    done
    echo "$0: Finished." 1>&2
    
    17.10.2011 16:20 eth4rendil | skóre: 13
    Rozbalit Rozbalit vše Re: posielanie "signalov" medzi beziacimi bash scriptami
    uzasne, dakujem pekne
    17.10.2011 16:37 eth4rendil | skóre: 13
    Rozbalit Rozbalit vše Re: posielanie "signalov" medzi beziacimi bash scriptami
    len škoda, že sa môže coproc spustiť iba 1x. Pri pokuse spustiť viac krát sa zobrazí: warning: execute_coproc: coproc [26841:COPROC] still exists

    niekde som objavil takéto niečo:
    #!/bin/bash
    
    # Clone stdout to 3
    exec 3>&1
    # Run TRA filtering letter "a"
    coproc TRA ( sed s/a/A/g >&3 )
    # Run TRB filtering letter "b"
    coproc TRB ( sed s/b/B/g >&3 )
    
    while read ; do
            case $REPLY in
            /* )
                    echo "$REPLY" >&${TRB[1]}
                    ;;
            * )
                    echo "$REPLY" >&${TRA[1]}
                    ;;
            esac
    done
    
    # Close input (otherwise script will not end on EOF).
    eval exec ${TRA[1]}\>\&-
    eval exec ${TRB[1]}\>\&-
    vyzerá to o niečo zložitejšie, ale snáď to bude fungovať :)
    17.10.2011 16:44 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: posielanie "signalov" medzi beziacimi bash scriptami
    Jen poznámka - je to feature bash 4, např. v oldstable debian lenny ještě není k dispozici. Stejně jako třeba asociativní pole - skript jsem po nasazení na produkční server s lenny musel přepsat do pythonu :)
    17.10.2011 16:52 eth4rendil | skóre: 13
    Rozbalit Rozbalit vše Re: posielanie "signalov" medzi beziacimi bash scriptami
    to som mal stastie :)
    GNU bash, version 4.1.5(1)-release
    Fungovať to funguje ale toho warningu sa nezbavím :/
    17.10.2011 17:30 l4m4
    Rozbalit Rozbalit vše Re: posielanie "signalov" medzi beziacimi bash scriptami
    coproc lze použít vícekrát i bez warningu, a to s jiným NAME; akorát tomu neumím vnutit podle dokumentace jiný NAME -- a nikdy jsem to nepotřeboval tak moc, abych musel zjistit jak to tedy udělat.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.