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

    V aktuálním přehledu vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie) bylo oznámeno vydání nové verze 0.4.0. Výrazně se zlepšilo vykreslování stránek jako lichess.org, Zulip nebo Speedtest.

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

    Vládní CERT upozorňuje (𝕏) na kritické zranitelnosti v produktech VMware: CVE-2026-59309, CVE-2026-59310 a CVE-2026-47876. Zranitelnosti v VMware vCenter umožňují vzdálenému útočníkovi se síťovým přístupem obejít autentizaci a získat neoprávněný přístup k vCenter, případně zneužít directory traversal ke spuštění libovolného kódu na vCenter.

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

    Společnost Coinkite upozorňuje na bezpečnostní chybu svých hardwarových kryptopeněženek Coldcard. Jedná se o kritickou chybu v generování náhodných čísel (RNG). Místo hardwarového generátoru náhodných čísel (TRNG) byl omylem používán softwarový fallback (PRNG).

    Ladislav Hagara | Komentářů: 0
    včera 14:11 | Zajímavý projekt

    Představena byla nová linuxová distribuce Shadowfetch Linux. Na rozdíl od mnoha nováčků, které nabízejí převážně jiné téma a výběr softwaru, tato distribuce založená na Debianu Testing s desktopovým prostředím KDE Plasma 6.6, klade lokálně běžící umělou inteligenci do centra svého desktopového zážitku.

    Pinhead | Komentářů: 0
    30.7. 17:22 | Zajímavý projekt

    Max Leiter v roce 2019 zkusil zprovoznit X server na iPadu (iOS). Nyní se k tématu vrátil a s pomocí LLM a balíčkovacích nástrojů Procursus rozběhl desktop s X11 i Waylandem. Jeho balíčky jsou dostupné v repozitáři xiOS.

    |🇵🇸 | Komentářů: 17
    30.7. 13:33 | IT novinky

    Společnost Google Cloud dnes oznámila, že její infrastruktura a služby byly oficiálně zařazeny do Katalogu cloud computingu vedeného Digitální a informační agenturou (DIA). Tato certifikace potvrzuje, že infrastruktura a služby Google Cloud splňují přísné bezpečnostní a regulační požadavky České republiky pro provoz cloudových služeb ve veřejném sektoru.

    Ladislav Hagara | Komentářů: 6
    30.7. 13:11 | IT novinky

    Vůbec poprvé v historii se stát při testování digitálních služeb obrací na širokou veřejnost. Digitální a informační agentura (DIA) a Ministerstvo vnitra zvou občany k zapojení do zátěžového testu eDokladů, které od loňského podzimu prošly optimalizací aplikace a posílením infrastruktury. Test proběhne 13. srpna ve 13:00 a pro jeho úspěch bude potřeba zapojení několika desítek tisíc občanů. Zapojení do testu je zcela dobrovolné a úkol

    … více »
    Ladislav Hagara | Komentářů: 40
    30.7. 13:00 | Nová verze

    FireDragon je webový prohlížeč, doposud založený na Floorpu, jednom z forků Firefoxu s větším důrazem na ochranu soukromí a přizpůsobení uživatelského rozhraní. Spravuje ho člen komunity distribuce Garuda Linux. Nové vydání verze 13 opouští Floorp a přechází přímo na Firefox s patchi z LibreWolfu a vlastními úpravami. Dostupný je také na Flathubu.

    |🇵🇸 | Komentářů: 0
    30.7. 05:44 | Zajímavý software

    picogame (GitHub) je malý 2D herní engine pro mikrokontroléry jako RP2040, čip uvnitř kapesní konzole Picopad. Hru napíšeš v Pythonu a vyzkoušíš ji v prohlížeči nebo desktopovém simulátoru. Až bude hotová, zkopíruješ ji na podporovanou desku. Na začátku nepotřebuješ C, sestavení firmwaru ani hardware.

    Ladislav Hagara | Komentářů: 1
    29.7. 19:22 | Nová verze

    Multiplatformní prohlížeč elektronických knih KOReader byl vydán ve verzi 2026.07 "Sailing Walrus". U PDF souborů s SMask lze vyčistit pozadí. Přibyla podpora Kobo v5 nebo základní podpora OPDS 2.0.

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


    Dotaz: Perl - funkce smazat řádek ze souboru

    Indiánský lotr avatar 13.10.2010 10:23 Indiánský lotr | skóre: 25 | blog: ucim_sa
    Perl - funkce smazat řádek ze souboru
    Přečteno: 717×

    Ahoj, snažím se udělat si skriptík na náhodný výběr vtipu ze souboru vtipy.txt, vybraný vtip se vypíše a poté uloží do vtipy2.txt. Ovšem nevím dál jak zavolat a použít funkci "tr" či "sed" tak, aby vybraný vtip z původního vtipy.txt smazal. Buď se může zavolat přímo smazání řádku podle nahodne_cislo, nebo vyhledat řetězec $vtip a smazat pomoci něj.

    #!/usr/bin/perl
      use strict;
      use warnings;
      my $rozsah = `wc -l vtipy.txt | sed -n 's/[^0-9 ]//gp'`;
      my $nahodne_cislo;
    
      do
      {
        $nahodne_cislo = int(rand($rozsah));
      } until ($nahodne_cislo != 0);
    
    
      my $vtip = `cat vtipy.txt |  head -n $nahodne_cislo | tail -n 1`;
    
      my $file = 'vtipy2.txt';
      open(vti2, ">>$file");
      print vti2 "$vtip";
      close(vti2);
    
      print "$vtip";
      print "Celkovy rozsah vtipu - (test): $rozsah";
      #system("`cat vtipy.txt | sed -i '/$vtip/d' > vtipy3.txt`");
      my @args = ( "bash", "-c", "cat vtipy.txt | sed -i '/$vtip/d' > vtipy3.txt" );
      system(@args);
    

    Odpovědi

    13.10.2010 11:39 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Perl - funkce smazat řádek ze souboru
    ``, wc, sed ???
    skus toto
    my @vtipy = <vtipy.txt>;
    my $nahodne_cislo = int rand scalar @vtipy
    my ($vtip) = splice @vtipy, $nahodne_cislo, 1;
    
    open VTIPY, '>', 'vtipy.txt' or die "vtipy.txt: $!\n"
    open VTIPY2, '>', 'vtipy2.txt' or die "vtipy2.txt: $!\n"
    
    print VTIPY2 $vtip;
    print VTIPY @vtipy;
    
    close VTIPY;
    close VTIPY2;
    
    13.10.2010 12:39 NeoV | skóre: 23
    Rozbalit Rozbalit vše Re: Perl - funkce smazat řádek ze souboru
    hh... 3 systemove volania pri 15 riadkovom Perl skripte :-)

    riesenie je zhruba take ako ti uz ukazal happy barney a v plne funkcnej podobe vyzera takto:
    #!/usr/bin/perl
    use strict;
    use warnings;
    
    open FH, "vtipy.txt" or die "Cannot open file";
    my @vtipy = <FH>;
    close FH;
    
    my $nahodne_cislo = int(rand($#vtipy));
    my $vtip = splice(@vtipy,$nahodne_cislo,1);
    
    print "Vyberam vtip cislo: ".($nahodne_cislo+1)."\n";
    print "Vtip: $vtip";
    
    open(FH, ">vtipy2.txt") or die "Cannot open file";
    print FH $vtip;
    close(FH);
    
    open(FH, ">vtipy.txt") or die "Cannot open file";
    print FH @vtipy;
    close(FH);
    
    
    13.10.2010 12:49 zulu
    Rozbalit Rozbalit vše Re: Perl - funkce smazat řádek ze souboru
    ...
    Indiánský lotr avatar 13.10.2010 13:17 Indiánský lotr | skóre: 25 | blog: ucim_sa
    Rozbalit Rozbalit vše Re: Perl - funkce smazat řádek ze souboru
    Pravda mohl sem to hodit do bashe :-) jj dobre napsane, mam se co ucit,..
    13.10.2010 17:56 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Perl - funkce smazat řádek ze souboru
    To ne, to by bylo moc jednoduché :)
    l=$(wc -l < vtipy.txt)
    l=$(($RANDOM % $l))
    sed -n -e "$l p" vtipy.txt >> vtipy2.txt
    sed -i "$l d" vtipy.txt
    pek avatar 20.10.2010 16:23 pek | skóre: 20
    Rozbalit Rozbalit vše Re: Perl - funkce smazat řádek ze souboru
    A co třeba použít fortune  :^)
    13.10.2010 14:18 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Perl - funkce smazat řádek ze souboru
    rozdiel "scalar @" a "$#" je, ze v tvojom pripade sa nikdy nevyberie posledny prvok :-)
    13.10.2010 19:54 NeoV_anon
    Rozbalit Rozbalit vše Re: Perl - funkce smazat řádek ze souboru
    Jojo... som si to potom vsimol... :) cakal som presne opacne chovanie rand-u :-)
    13.10.2010 19:59 NeoV_anon
    Rozbalit Rozbalit vše Re: Perl - funkce smazat řádek ze souboru
    resp. ani nie randu... ale miesto int (ktory iba osekava desatinu cast) staci pouzit ceil (ktory uz robi spravne zaokruhlovanie :-) )
    20.10.2010 21:36 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Perl - funkce smazat řádek ze souboru
    jen si dovolím připomenout pár vymožeností moderní doby

    open VTIPY -> open my $vtipy

    or die... -> use autodie
    In Ada the typical infinite loop would normally be terminated by detonation.

    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.