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í
×
    včera 19:44 | Komunita

    Ubuntu 25.10 bude (𝕏) Questing Quokka (pátrající klokan quokka).

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

    Ubisoft uvolnil zdrojové kódy softwaru Chroma pro simulaci barvosleposti pro vývojáře počítačových her. K dispozici jsou na GitHubu pod licencí Apache 2.0.

    Ladislav Hagara | Komentářů: 0
    včera 02:00 | Nová verze

    Defold (Wikipedie) je multiplatformní herní engine. Nejnovější verze je 1.10.0. Zdrojové kódy jsou k dispozici na GitHubu. Licence vychází z licence Apache 2.0.

    Ladislav Hagara | Komentářů: 0
    18.4. 13:00 | Bezpečnostní upozornění

    Správa služeb hlavního města Prahy se potýká s následky kyberútoku. Hackerská skupina začala zveřejňovat na internetu některé z ukradených materiálů a vyzvala organizaci k vyjednávání. Ta zatím podrobnosti k případu sdělovat nechce. Případem se zabývá policie i Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB).

    Ladislav Hagara | Komentářů: 2
    18.4. 12:33 | Zajímavý software

    OCCT je oficiálně k dispozici na Linuxu (YouTube). Jedná se o proprietární software pro zátěžové testování a monitorování hardwaru.

    Ladislav Hagara | Komentářů: 1
    18.4. 02:44 | IT novinky Ladislav Hagara | Komentářů: 0
    17.4. 17:55 | Nová verze

    Canonical vydal Ubuntu 25.04 Plucky Puffin. Přehled novinek v poznámkách k vydání. Jedná se o průběžné vydání s podporou 9 měsíců, tj. do ledna 2026.

    Ladislav Hagara | Komentářů: 0
    17.4. 14:11 | Nová verze

    Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.2.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    17.4. 14:00 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.04. Přehled novinek i s náhledy a videi v oficiálním oznámení.

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

    Nová čísla časopisů od nakladatelství Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 152 (pdf) a Hello World 26 (pdf).

    Ladislav Hagara | Komentářů: 0
    Jaký filesystém primárně používáte?
     (59%)
     (1%)
     (10%)
     (20%)
     (4%)
     (1%)
     (2%)
     (0%)
     (1%)
     (2%)
    Celkem 377 hlasů
     Komentářů: 18, poslední 17.4. 12:41
    Rozcestník
    Štítky: není přiřazen žádný štítek

    Dotaz: vypsat spolecne radky dvou souboru

    20.3.2009 16:37 geralt
    vypsat spolecne radky dvou souboru
    Přečteno: 317×

    Ahoj,

    potreboval bych v shellu vypsat vsechny spolecne radky dvou sobobru (tj. ne to, co dela comm - ten najde jenom ty radky, ktere jsou v souborech na stejnych pozicich od zacatku).

    Dekuju Geralt

    Odpovědi

    kozzi avatar 20.3.2009 18:18 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: vypsat spolecne radky dvou souboru
    a co udelat si skript napriklad compare.sh s timto obsahem:
    while read -r x; do
            sed '/'$x'/ P;D' < $2;
    done < $1
    
    a ten sposutet tak ze das sh compare.sh prvni.txt druhy.txt
    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    kozzi avatar 20.3.2009 18:22 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: vypsat spolecne radky dvou souboru
    problem by mohl byt v tom ze pokud by retezec obsahoval nektere znaky delalo by to potize
    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    kozzi avatar 20.3.2009 18:28 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: vypsat spolecne radky dvou souboru
    Nebo o něco lepší bude toto:
    porovnat(){
            while read -r y; do
                    if [ "$x" == "$y" ]; then
                            echo -e "$y";
                    fi
            done < $1;
    }
    while read -r x; do
            porovnat $2;
    done < $1;
    
    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    20.3.2009 19:05 l4m4
    Rozbalit Rozbalit vše Re: vypsat spolecne radky dvou souboru
    Pokud se řádky neopakují v rámci souboru, tak

    sort file1 file2 | uniq -d

    Pokud se opakují i v rámci jednoho souboru, tak je třeba upřesnit definici společného řádku.
    20.3.2009 21:00 deadmail
    Rozbalit Rozbalit vše Re: vypsat spolecne radky dvou souboru
    Da sa pouzit aj prikaz comm (a nevadi ze su rovnake riadky v jednom subore), ale subory treba najprv utriedit (vid info coreutils), takze riesenie by mohlo byt:

    comm -12 <(sort file1) <(sort file2)
    20.3.2009 21:11 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: vypsat spolecne radky dvou souboru
    sort a >x
    sort b >y
    join -t^ x y
    Namiesto ^ dosadit znak, ktory sa v ziadnom subore nevyskytuje
    If you hold a Unix shell up to your ear, you can you hear the C.
    21.3.2009 10:07 deadmail
    Rozbalit Rozbalit vše Re: vypsat spolecne radky dvou souboru
    a nakoniec rm x y
    20.3.2009 21:33 geralt
    Rozbalit Rozbalit vše Re: vypsat spolecne radky dvou souboru

    Diky za odpovedi. Radky se v zadnem ze souboru neopakuji. Jeste bych potreboval vedet, jak vypsat ty radky, ktere jsou v souboru A, ale ne v souboru B.


    20.3.2009 22:39 l4m4
    Rozbalit Rozbalit vše Re: vypsat spolecne radky dvou souboru
    To je nějaká domácí úloha?

    Pokračování triku s uniq:

    sort fileA fileB fileB | uniq -u
    20.3.2009 22:57 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: vypsat spolecne radky dvou souboru
    Přemejšlení bolí, co :)
    21.3.2009 10:05 deadmail
    Rozbalit Rozbalit vše Re: vypsat spolecne radky dvou souboru
    comm -23 <(sort file1) <(sort file2)
    21.3.2009 10:13 deadmail
    Rozbalit Rozbalit vše Re: vypsat spolecne radky dvou souboru
    Komentar:

    comm pracuje s utriedenymi subormi, takze bud utriedime do pomocnych suborov x a y (a tie potom vymazeme), alebo v bash-i mozeme vytvorit nepomenovanu ruru cez <(prikaz). Vypisuje tri stlpce - riadky len v prvom, len v druhom a v oboch suboroch. Prepinacmi vieme vybrat, ktore stlpce chceme zobrazit.

    comm -XY <(sort file1) <(sort file2)

    -12 ... vypis len spolocne riadky

    -23 ... vypis riadky, ktore su len v prvom subore

    -13 ... vypis riadky, ktore su len v druhom subore

    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.