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

Eclipse Foundation oznámila vydání nové verze vývojového prostředí Eclipse. Eclipse 4.7 s kódovým označením Oxygen vychází rok po vydání verze 4.6 s kódovým označením Neon (zprávička) a přináší celou řadu novinek. Jejich představení také na YouTube.

Ladislav Hagara | Komentářů: 0
včera 23:33 | Zajímavý software

Před týdnem Lennart Poettering představil casync, tj. nástroj pro distribuci obrazů systémů. Dnes oficiálně představil mkosi, tj. nástroj pro generování těchto obrazů. Zdrojové kódy mkosi jsou k dispozici na GitHubu pod licencí LGPL-2.1.

Ladislav Hagara | Komentářů: 0
včera 16:00 | Bezpečnostní upozornění

Ve správci systému a služeb systemd, konkrétně v systemd-resolved, byla nalezena bezpečnostní chyba CVE-2017-9445. Útočník může vzdáleně shodit server nebo spustit libovolný příkaz.

Ladislav Hagara | Komentářů: 19
27.6. 11:33 | Pozvánky

Konference LinuxDays 2017 proběhne o víkendu 7. a 8. října v Praze v Dejvicích v prostorách FIT ČVUT. Konference OpenAlt 2017 proběhne o víkendu 4. a 5. listopadu na FIT VUT v Brně. Organizátoři konferencí vyhlásili CFP (LinuxDays, OpenAlt). Přihlaste svou přednášku nebo doporučte konference známým.

Ladislav Hagara | Komentářů: 1
27.6. 06:00 | Nová verze

Byla vydána verze 1.3.0 odlehčeného desktopového prostředí Lumina (Wikipedie, GitHub) postaveného nad toolkitem Qt. Z novinek lze zmínit nový motiv ikon nahrazující Oxygen (material-design-[light/dark]) nebo vlastní multimediální přehrávač (lumina-mediaplayer).

Ladislav Hagara | Komentářů: 2
26.6. 17:33 | Bezpečnostní upozornění

Před šesti týdny byly publikovány výsledky bezpečnostního auditu zdrojových kódů OpenVPN a nalezené bezpečnostní chyby byly opraveny ve verzi OpenVPN 2.4.2. Guido Vranken minulý týden oznámil, že v OpenVPN nalezl další čtyři bezpečnostní chyby (CVE-2017-7520, CVE-2017-7521, CVE-2017-7522 a CVE-2017-7508). Nejzávažnější z nich se týká způsobu, jakým aplikace zachází s SSL certifikáty. Vzdálený útočník může pomocí speciálně

… více »
Ladislav Hagara | Komentářů: 1
26.6. 06:55 | Zajímavý projekt

V Edici CZ.NIC vyšla kniha Průvodce labyrintem algoritmů. Kniha je ke stažení zcela zdarma (pdf) nebo lze objednat tištěnou verzi za 339 Kč (připojení přes IPv4) nebo 289 Kč (připojení přes IPv6).

Ladislav Hagara | Komentářů: 10
26.6. 06:33 | Zajímavý software

Byla vydána verze 2.2.0 svobodného správce hesel KeePassXC (Wikipedie). Jedná se o komunitní fork správce hesel KeePassX s řadou vylepšení.

Ladislav Hagara | Komentářů: 0
26.6. 06:11 | IT novinky

Vývojář Debianu Henrique de Moraes Holschuh upozorňuje v diskusním listu debian-devel na chybu v Hyper-Threadingu v procesorech Skylake a Kaby Lake od Intelu. Za určitých okolností může chyba způsobit nepředvídatelné chování systému. Doporučuje se aktualizace mikrokódu CPU nebo vypnutí Hyper-Threadingu v BIOSu nebo UEFI [reddit].

Ladislav Hagara | Komentářů: 0
24.6. 01:23 | Komunita

Phoronix spustil 2017 Linux Laptop Survey. Tento dotazník s otázkami zaměřenými na parametry ideálního notebooku s Linuxem lze vyplnit do 6. července.

Ladislav Hagara | Komentářů: 3
Chystáte se pořídit CPU AMD Ryzen?
 (7%)
 (31%)
 (1%)
 (9%)
 (44%)
 (9%)
Celkem 858 hlasů
 Komentářů: 65, poslední 1.6. 19:16
    Rozcestník

    Dotaz: Split v PERL

    8.9.2009 14:34 Saky
    Split v PERL
    Přečteno: 520×
    Zdravím..
    Potřeboval bych poradit, jak v PERL rozdělit řádek a načíst slova do samostatných proměnných...
    Mám URL ze souborem http://www.i-netportal.cz/input.txt . Ten obsahuje dejme tomu 4 slova, oddělená mezerami. Pak mám v PERL něco takového, aby mi na příkaz zobraz vypsal obsah souboru:
     
     if ($arg =~ /!zobraz/i) {   
     my $url = 'http://www.i-netportal.cz/input.txt';
          use LWP::Simple;
     my $content = get $url;
     die "Couldn't get $url" unless defined $content;
        
     print "Soubor obsahuje slova: $content\n";
     }
     
    Potřeboval bych však doplnit pravděpodobně funkcí split rozdělení na jednotlivá slova, abych mohl následně použít výstup "!Soubor obsahuje: $1slovo, dále za ním $2slovo,.... " Tedy vypisovat je jednotlivě.
    Zkoušel jsem něco jako ($slovo1, $slovo2, $slovo3) = split(" ", $content); , avšak neúspěšně.
    Díky za každou radu :-)

    Řešení dotazu:


    Odpovědi

    Řešení 1× (saky)
    8.9.2009 15:06 ams
    Rozbalit Rozbalit vše Re: Split v PERL

    Funguje to presne tak jak jste to napsal, mate ale chybu ve vypisu: misto $slovo1 pouzivate $1slovo atd. Jinou moznosti je pouzit pole misto skalaru a napsat neco takoveho:

    @slovo = split(" ", $content);

    print "Soubor obsahuje: $slovo[0], dale za nim $slovo[1],  pak  $slovo[2] a nakonec $slovo[3].\n";

    Řešení 1× (saky)
    8.9.2009 15:14 Saky
    Rozbalit Rozbalit vše Re: Split v PERL

     Tak mám pravděpodobně chybu ve formátu, jelikož :

     

            if ($arg =~ /!zobraz/i) {   

        my $url = 'http://www.i-netportal.cz/input.tx';

          use LWP::Simple;

      my $content = get $url;

      die "Couldn't get $url" unless defined $content;

       @slovo = split(" ", $content);

         print "Soubor obsahuje: $slovo[0], dale za nim $slovo[1],  pak  $slovo[2] a nakonec $slovo[3].\n";  

         }

    Nefunguje.. :(. Kde může být chyba?

     

    8.9.2009 15:53 voda | skóre: 28 | Praha
    Rozbalit Rozbalit vše Re: Split v PERL
    Není to chybějícím t v http://www.i-netportal.cz/input.txt. Jinak vypisuje to něco? Mě to funguje správně.
    8.9.2009 16:00 Saky
    Rozbalit Rozbalit vše Re: Split v PERL

     Písmenko se ztratilo při CTRLC+C / V :-)

    Obsah souboru mi to vypíše v pořádku, ale jakmile vložím funkci split, aplikace ani nenaběhne, bez jakékoliv chyby. Možná je chyba už někde výše, ale kód je poměrně dlouhý...

    Zvláštní, že bez toho bez problému.. :( Právě jsem si myslel, zda je funkce vložena na správném místě, jelikož to spadne při vložení v jakémkoliv formátu..

    Řešení 1× (saky)
    8.9.2009 16:09 voda | skóre: 28 | Praha
    Rozbalit Rozbalit vše Re: Split v PERL
    Zkuste tam přidat:
    use strict;
    use warnings;
    use diagnostics;
    
    jestli to něco nevypíše pak. Popřípadě kód zjednodušit tak, ať se chyba hledá lépe.
    8.9.2009 16:10 ams
    Rozbalit Rozbalit vše Re: Split v PERL

    Nemate nahodou v tom souboru use strict? Zkuste misto @slovo = split ...    napsat  my @slovo = split ...;

    8.9.2009 16:33 Saky
    Rozbalit Rozbalit vše Re: Split v PERL

     Tak to je ono :-)

    Supeeeer, funguje :-)

    Bez problému to třídí slova dle obou verzí.

    Děkuji moc za rady :)

    8.9.2009 18:03 voda | skóre: 28 | Praha
    Rozbalit Rozbalit vše Re: Split v PERL
    Tak při takovéto chybě mi to vypisuje: Global symbol "@slovo" requires explicit package name at ./tmp/perl.pl line 10
    8.9.2009 16:23 Saky
    Rozbalit Rozbalit vše Re: Split v PERL

     Tak jsem zkoušel jednak zapnout podrobný výpis chyb, tam se až na pár drobností nic neprojeví.

    Při zadání funkce split se aplikace vůbec nespustí, tudíž žádná chyba:(.

    Zkoušel jsem i na hradit uvozovky lomítky, avšak také bez úspěchu...

    Zkrátit jej asi nedokáži, teprve s tím experimentuji a asi bych jej nedokázal natolik očesat, abych chybu našel.. :(

    Pokud by byl někdo ochoten pomoci úpravou, jistě bych mohl i já něčím přispět (FTP prostor, SQl databázi...)

    Už si opravdu nevím rady :)

    8.9.2009 16:09 Chulda | skóre: 19
    Rozbalit Rozbalit vše Re: Split v PERL
    Ted jsem se nekde docetl, ze na parsovani mezery jsou potreba lomitka (regularni vyraz) namisto uvozovek split(/ /, $content);
    8.9.2009 16:17 ams
    Rozbalit Rozbalit vše Re: Split v PERL

    Je pravda, ze split ocekava jako prvni argment regexp, ale parametr " " je zvlastni pripad, ktery funguje jinak nez / /. Prectete si perldoc -f split:
    As a special case, specifying a PATTERN of space (' ') will split on white space just as "split" with no arguments does. Thus, "split(' ')" can be used to emulate awk's default behavior, whereas "split(/ /)" will give you as many null initial fields as there are leading spaces.

    22.12.2010 10:35 apokalypso77
    Rozbalit Rozbalit vše Re: Split v PERL
    Dobrý den, mám prolém rozdělit @list na jednotlivé části! píše mi to do příkazového řádku neco mezera neco, ale nevýhodou je že je ten počet pokaždý jiný proto si ten počet nemohu definovat a potřeboval bych, aby to něco bylo pokaždý na samotném řádku

    v přikazovým řádku to vypadá takto @neco neco neco neco +neco @neco takže to nemu rozdělit podle nějakýho znamínka nic poradil by mi někdo ? když tak pls na email

    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.