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 13:22 | IT novinky

    Společnost IBM představila server IBM LinuxONE Emperor 5 poháněný procesorem IBM Telum II.

    Ladislav Hagara | Komentářů: 1
    dnes 04:55 | Nová verze

    Byla vydána verze 4.0 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Přehled novinek v poznámkách k vydání. Využíván je Free Pascal Compiler (FPC) 3.2.2.

    Ladislav Hagara | Komentářů: 1
    dnes 00:33 | Komunita

    Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.

    Ladislav Hagara | Komentářů: 23
    včera 23:22 | Pozvánky

    Již tuto středu proběhne 50. Virtuální Bastlírna, tedy dle římského číslování L. Bude L značit velikost, tedy více diskutujících než obvykle, či délku, neboť díky svátku lze diskutovat dlouho do noci? Bude i příští Virtuální Bastlírna virtuální nebo reálná? Nejen to se dozvíte, když dorazíte na diskuzní večer o elektronice, softwaru, ale technice obecně, který si můžete představit jako virtuální posezení u piva spojené s učenou

    … více »
    bkralik | Komentářů: 0
    včera 22:33 | IT novinky

    Dle plánu dnes končí služba Skype. Uživatelé mohou pokračovat v Microsoft Teams.

    Ladislav Hagara | Komentářů: 1
    včera 21:44 | IT novinky

    Český statistický úřad rozšiřuje Statistický geoportál o Datový portál GIS s otevřenými geografickými daty. Ten umožňuje stahování datových sad podle potřeb uživatelů i jejich prohlížení v mapě a přináší nové možnosti v oblasti analýzy a využití statistických dat.

    Ladislav Hagara | Komentářů: 2
    včera 12:33 | Zajímavý projekt

    Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.

    Ladislav Hagara | Komentářů: 1
    včera 12:11 | Pozvánky

    Jarní konference EurOpen.cz 2025 proběhne 26. až 28. května v Brandýse nad Labem. Věnována je programovacím jazykům, vývoji softwaru a programovacím technikám.

    Ladislav Hagara | Komentářů: 0
    4.5. 21:44 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    4.5. 14:22 | IT novinky

    Před 25 lety zaplavil celý svět virus ILOVEYOU. Virus se šířil e-mailem, jenž nesl přílohu s názvem I Love You. Příjemci, zvědavému, kdo se do něj zamiloval, pak program spuštěný otevřením přílohy načetl z adresáře e-mailové adresy a na ně pak „milostný vzkaz“ poslal dál. Škody vznikaly jak zahlcením e-mailových serverů, tak i druhou činností viru, kterou bylo přemazání souborů uložených v napadeném počítači.

    Ladislav Hagara | Komentářů: 35
    Jaký filesystém primárně používáte?
     (57%)
     (1%)
     (8%)
     (22%)
     (4%)
     (2%)
     (3%)
     (1%)
     (1%)
     (3%)
    Celkem 538 hlasů
     Komentářů: 22, poslední včera 10:06
    Rozcestník

    Dotaz: Ukonceni behu "celeho" skriptu

    27.1.2012 11:10 Jiřík 1435 | skóre: 8
    Ukonceni behu "celeho" skriptu
    Přečteno: 252×
    Dobry den, sem zacatecnik v programovani pod linuxem. Chtel bych se zeptat na reseni nasledujiciho problemu. Mam skript s nazvem zaloha1.sh:
    #!/bin/sh
    rsyncdir() {
            rsync $1 
            sync
    }
    
    (
    while true; do
            rsyncdir adresar1
            sleep 10
            rsyncdir adresar2
            sleep 10
    done
    ) &
    Potrebuji vedet jak skript jednoduse ukoncim kdyz v seznamu procesu bezi jak /bin/sh ./zaloha1.sh s PID1 tak i - rsync adresarn s PID2. Kdyz totiz zadam kill PID1 proces s rsync adresarn stale bezi. Doufam ze jsem popsal svuj problem spravne.

    Odpovědi

    27.1.2012 11:18 Ragzid | skóre: 24 | blog: Pivní koutek | Liberec-Brno
    Rozbalit Rozbalit vše Re: Ukonceni behu "celeho" skriptu
    Jasne ze pobezi, protoze cela ta smycka bezi na pozadi, diky "&", ma to tam nejaky zvlastni duvod?
    27.1.2012 13:53 Jiřík 1435 | skóre: 8
    Rozbalit Rozbalit vše Re: Ukonceni behu "celeho" skriptu
    Ano, chci ten skript z konzole kdykoliv spustit, pokracovat v praci a konzoli ukoncit...neco jako sluzbu.
    27.1.2012 11:19 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
    Rozbalit Rozbalit vše Re: Ukonceni behu "celeho" skriptu
    Z man stránky rsyncu:
    EXIT VALUES
           0      Success
           ...
           20     Received SIGUSR1 or SIGINT
    Takže pokud ukončíte ten rsync signálem SIGUSR1, tak by mělo stačit změnit:
    rsyncdir() {
            rsync $1
            [ "$?" -eq 20 ] && exit
            sync
    }
    Další možnost je ukončovat pokud existuje nějaký soubor (tj. například vytvořením /tmp/skonci.zalohu by se skript ukončil):
            rsyncdir adresar1
            [ -e "/tmp/skonci.zalohu" ] && exit
    I am always ready to learn although I do not always like to be taught. (W. Churchill)
    27.1.2012 12:48 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Ukonceni behu "celeho" skriptu
    Já to zase řeším tak že při spuštění programu vytvořím soubor "/var/run/nazevprogramu.pid" kam zapíšu pid programu.

    Pokud program končí tak ho zase smažu.

    A když potřebuji přerušit program tak tam kde to potřebuji testuji zda ten soubor existuje a pokud ne korektně uklidím a ukončím program.

    Takže když chci z jiného programu ukončit ten spuštěný tak mu smažu ten soubor a on se ukončí sám.
    27.1.2012 13:56 Jiřík 1435 | skóre: 8
    Rozbalit Rozbalit vše Re: Ukonceni behu "celeho" skriptu
    To sem zkousel ale tim ukoncim pouze proces /bin/sh ./zaloha1.sh s PID1. Proces rsync adresarn s PID2 bezi dale.
    27.1.2012 14:18 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Ukonceni behu "celeho" skriptu
    V tom skriptu se musíš postarat o ukončení toho co jsi z toho skriptu spustil.

    Já to mám trochu jednoduší program v C mi vypisuje na LED displej a běží na pozadí pořád a jak mu smažu soubor s pid tak se prostě korektně ukončí.
    27.1.2012 13:54 Jiřík 1435 | skóre: 8
    Rozbalit Rozbalit vše Re: Ukonceni behu "celeho" skriptu
    Ano ale jak si elegantne zjistim PID obou procesu ?
    27.1.2012 14:17 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
    Rozbalit Rozbalit vše Re: Ukonceni behu "celeho" skriptu
    Proč obou?
    I am always ready to learn although I do not always like to be taught. (W. Churchill)
    27.1.2012 14:24 Jiřík 1435 | skóre: 8
    Rozbalit Rozbalit vše Re: Ukonceni behu "celeho" skriptu
    Protoze kdyz ukoncim beh /bin/sh ./zaloha1.sh tak rsync ktery ten skript spustil bezi dale a ja chci ukoncit vse co dany skript spustil.
    27.1.2012 14:46 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
    Rozbalit Rozbalit vše Re: Ukonceni behu "celeho" skriptu
    Jistě, proto jsem navrhl, že otestujete návratovou hodnotu a pak skript ukončíte. Tudíž bude stačit zabít jen ten rsync.

    Při řešení se souborem (řešení s výmazem souboru je elegantnější) pak jen přidáte ten test do každého místa, kde je OK skončit. To má výhodu, že nemusíte nic ukončovat násilně, což je obvykle lepší řešení.
    I am always ready to learn although I do not always like to be taught. (W. Churchill)

    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.