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 03:00 | Nová verze

    Byl vydán Debian 13.3, tj. třetí opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.13, tj. třináctá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    včera 03:00 | Komunita

    Na stránkách Evropské komise, na portálu Podělte se o svůj názor, se lze do 3. února podělit o názor k iniciativě Evropské otevřené digitální ekosystémy řešící přístup EU k otevřenému softwaru.

    Ladislav Hagara | Komentářů: 4
    9.1. 19:44 | Zajímavý software

    Společnost Kagi stojící za stejnojmenným placeným vyhledávačem vydala (𝕏) alfa verzi linuxové verze (flatpak) svého proprietárního webového prohlížeče Orion.

    Ladislav Hagara | Komentářů: 4
    9.1. 19:11 | IT novinky

    Firma Bose se po tlaku uživatelů rozhodla, že otevře API svých chytrých reproduktorů SoundTouch, což umožní pokračovat v jejich používání i po plánovaném ukončení podpory v letošním roce. Pro ovládání také bude stále možné využívat oficiální aplikaci, ale už pouze lokálně bez cloudových služeb. Dokumentace API dostupná zde (soubor PDF).

    NUKE GAZA! 🎆 | Komentářů: 0
    9.1. 14:22 | Zajímavý článek

    Jiří Eischmann se v příspěvku na svém blogu rozepsal o open source AdGuard Home jako domácí ochraně nejen před reklamou. Adguard Home není plnohodnotným DNS resolverem, funguje jako DNS forwarder s možností filtrování. To znamená, že když přijme DNS dotaz, sám na něj neodpoví, ale přepošle ho na vybraný DNS server a odpovědi zpracovává a filtruje dle nastavených pravidel a následně posílá zpět klientům. Dá se tedy používat k blokování reklamy a škodlivých stránek a k rodičovské kontrole na úrovni DNS.

    Ladislav Hagara | Komentářů: 6
    9.1. 03:33 | Zajímavý software

    AI Claude Code od Anthropicu lépe rozumí frameworku Nette, tj. open source frameworku pro tvorbu webových aplikací v PHP. David Grudl napsal plugin Nette pro Claude Code.

    Ladislav Hagara | Komentářů: 1
    9.1. 00:11 | Nová verze

    Byla vydána prosincová aktualizace aneb nová verze 1.108 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.108 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    8.1. 20:44 | IT novinky

    Na lasvegaském veletrhu elektroniky CES byl předveden prototyp notebooku chlazeného pomocí plazmových aktuátorů (DBD). Ačkoliv se nejedná o první nápad svého druhu, nepochybně to je první ukázka praktického použití tohoto způsobu chlazení v běžné elektronice. Co činí plazmové chladící akční členy technologickou výzvou je především vysoká produkce jedovatého ozonu, tu se prý podařilo firmě YPlasma zredukovat dielektrickou

    … více »
    NUKE GAZA! 🎆 | Komentářů: 13
    8.1. 16:33 | Zajímavý projekt

    Patchouli je open source implementace EMR grafického tabletu (polohovací zařízení). Projekt je hostován na GitLabu.

    Ladislav Hagara | Komentářů: 0
    8.1. 14:11 | IT novinky

    Český Nejvyšší soud potvrdil, že česká právní úprava plošného uchování dat o elektronické komunikaci porušuje právo Evropské unie. Pravomocným rozsudkem zamítl dovolání ministerstva průmyslu a obchodu. To se teď musí omluvit novináři Českého rozhlasu Janu Cibulkovi za zásah do práv na ochranu soukromí a osobních údajů. Ve sporu jde o povinnost provozovatelů sítí uchovávat údaje, ze kterých lze odvodit, kdo, s kým a odkud komunikoval.

    Ladislav Hagara | Komentářů: 19
    Které desktopové prostředí na Linuxu používáte?
     (6%)
     (5%)
     (0%)
     (9%)
     (20%)
     (4%)
     (5%)
     (3%)
     (10%)
     (51%)
    Celkem 349 hlasů
     Komentářů: 8, poslední včera 23:18
    Rozcestník

    Dotaz: Perl skript jako daemon

    10.4.2009 09:26 hates | skóre: 30 | blog: Jak_jsem_se_dostal_k_linuxu
    Perl skript jako daemon
    Přečteno: 584×

    Zdravim. mam takovy problem je vubec mozne a popripade jak to zaridit aby mi perl skript cekal jako daemon a cetl data z pojmenovane roury ? Jde mi o to aby vse co spadne z jedne strany do roury z druhe strany vpadlo do toho skriptu a ten si tenhle vstup precte a zpracuje a bude cekat na dalsi vstup. Jak vyresit tenhle skript. hledam, ale nemuzu nic najit. asi hledam spatne. Prosim o nakopnuti. Diky za radu.

    Odpovědi

    10.4.2009 09:34 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Perl skript jako daemon

    Pokud by místo pojmenované roury mohl být síťový port, lze využít klasický inet démon. Tvůj skript jen čte ze stdin a zapisuje na stdout, spouštění skriptu a předávání dat již zařizuje inet démon, viz man inetd. Dělal jsem takto i služby ve windows na cygwinu :)

    10.4.2009 09:55 hates | skóre: 30 | blog: Jak_jsem_se_dostal_k_linuxu
    Rozbalit Rozbalit vše Re: Perl skript jako daemon

    sitovy daemon  nelze pouzit. to bych neresil potom touhle berlickou.

     

    10.4.2009 10:00 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Perl skript jako daemon

    Pokud jde o to, aby ten skript běžel jen jednou (např. si udržuje nějaké globální proměnné), pak by přeci mělo stačit číst v perlu ze stdin, zapisovat na stdout a spustit s přesměrování vstupu/výstupu z/do pipy. Možná jsem to nepochopil, ale trochu nevidím ten problém.

    10.4.2009 10:13 hates | skóre: 30 | blog: Jak_jsem_se_dostal_k_linuxu
    Rozbalit Rozbalit vše Re: Perl skript jako daemon

    jde o to aby ten skript bezel neustale a cekal na dalsi a dalsi vstupy. funguje to asi takhle

     

    program loguje do pipe -----------> pojmenovana roura ----------------------> skript, ktery posloucha a zpracovava vstupy, ktere padaji do roury
    10.4.2009 10:18 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Perl skript jako daemon

    Když bude číst v nekonečné smyčce, tak po spuštění bude běžet stále. Když jej budeš spouštět v nekonečné smyčce, po shození zase najede, dokud nezabiješ shell té smyčky.

    10.4.2009 10:36 hates | skóre: 30 | blog: Jak_jsem_se_dostal_k_linuxu
    Rozbalit Rozbalit vše Re: Perl skript jako daemon

    tohle jsem uz poresil, ale jak by asi mel vypadat radek v perlu, ktery si prijme ten vstup pokud jej ctu ze STDIN tak mi to nic nepise

     

    skript vypada asi takhle

     

    #!/usr/bin/perl -w my $FILE    = '/var/log/pokus.log'; 
    open(LOG, ">>$FILE");

    while() {
        $vstup = <STDIN>;
        print LOG "$vstup\n";
    } close LOG;

     a spoustim jej takhle

     ./skript.pl < pojmenovana_roura

    Nicmene pokud do roury dopadnou nejake vstupy do souboru pokus.log se mi nic nezapise. Ale kdyz pouziji prikaz cat pojmenovana_roura, tak se mi data z ni zobrazuji na STDOUT. Delam nekde chybu ?

    10.4.2009 13:53 ams
    Rozbalit Rozbalit vše Re: Perl skript jako daemon

    #!/usr/bin/perl
    use warnings;
    use strict;

    my $FILE = '/var/log/pokus.log';
    open(my $LOG, ">>$FILE") or die "Cannot open $FILE: $!";
    select((select($LOG),$|=1)[0]);  # Toto je dulezity radek - vypnout bufrovani vystupu

    while() {
            my $vstup = <>;
            next unless defined $vstup;
            print $LOG $vstup;
    }

    close $LOG;

    10.4.2009 14:26 hates | skóre: 30 | blog: Jak_jsem_se_dostal_k_linuxu
    Rozbalit Rozbalit vše Re: Perl skript jako daemon

    super to bylo presne ono. diky za namet. se zbytkem si jiz poradim.

    10.4.2009 16:33 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Perl skript jako daemon
    Klasický problém s bufferováním. Ono se to tam zapisuje, ale uvidíte to až po 4k balíku nebo tak nějak.

    Tím odporným selectem se to řešilo možná před 10 lety. Moderněji by to bylo takto:
    open(my $log, '>>', $FILE);
    $log->autoflush(0);
    

    ...a pak všude používat $log místo LOG

    Pak máte další problém s tím nekonečným cyklem. Pokud skončí zapisující proces, budete dostávat EOF, a Váš skript se zacyklí na 100% CPU. Buď chcete v tom případě program ukončit, nebo čekat na další vstupy, ale s nějakou prodlevou, abyste nežral CPU (nevím, jestli se nemusí v tomto případě roura zavřít a znovu otevřít).

    Jinak dotaz se jmenuje perl skript jako daemon, chcete tedy aby se program choval jako démon, tj. běžel bez terminálu a na pozadí?
    In Ada the typical infinite loop would normally be terminated by detonation.
    11.4.2009 06:56 hates | skóre: 30 | blog: Jak_jsem_se_dostal_k_linuxu
    Rozbalit Rozbalit vše Re: Perl skript jako daemon

    presne tak jedna se mi o to aby bezel na pozadi a pouze zpracovaval data, ktera protecou rourou

     

    11.4.2009 07:19 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Perl skript jako daemon
    Tak na pozadí ho můžete dát několika způsoby:

    1) nohup

    2) /etc/inittab

    3) implementace démonizace ve skriptu - fork, setsid, chroot, setuid, ...
    In Ada the typical infinite loop would normally be terminated by detonation.
    11.4.2009 09:18 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Perl skript jako daemon

    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.