abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 2
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 2
    včera 04:11 | Nová verze

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    23.4. 23:22 | IT novinky

    Evropský parlament dnes přijal směrnici týkající se tzv. práva spotřebitele na opravu. Poslanci ji podpořili 584 hlasy (3 bylo proti a 14 se zdrželo hlasování). Směrnice ujasňuje povinnosti výrobců opravovat zboží a motivovat spotřebitele k tomu, aby si výrobky nechávali opravit a prodloužili tak jejich životnost.

    Ladislav Hagara | Komentářů: 8
    23.4. 16:11 | Nová verze

    Bylo oznámeno (cs) vydání Fedora Linuxu 40. Přehled novinek ve Fedora Workstation 40 a Fedora KDE 40 na stránkách Fedora Magazinu. Současně byl oznámen notebook Slimbook Fedora 2.

    Ladislav Hagara | Komentářů: 23
    23.4. 13:44 | Upozornění

    ČTK (Česká tisková kancelář) upozorňuje (X), že na jejím zpravodajském webu České noviny byly dnes dopoledne neznámým útočníkem umístěny dva smyšlené texty, které nepocházejí z její produkce. Jde o text s titulkem „BIS zabránila pokusu o atentát na nově zvoleného slovenského prezidenta Petra Pelligriniho“ a o údajné mimořádné prohlášení ministra Lipavského k témuž. Tyto dezinformace byly útočníky zveřejněny i s příslušnými notifikacemi v mobilní aplikaci Českých novin. ČTK ve svém zpravodajském servisu žádnou informaci v tomto znění nevydala.

    Ladislav Hagara | Komentářů: 29
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 721 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: filtrovani pomoci awk

    30.11.2007 20:07 Radek Podskubka | skóre: 2
    filtrovani pomoci awk
    Přečteno: 366×
    Ahoj, potrebuju profiltrovat textovy soubor typu
    707120200	100.000000	137.750000	100.000000
    707120200	100.000000	140.400000	100.000000
    707120200	100.000000	145.887500	100.000000
    707120300	100.000000	150.762500	100.000000
    707120400	100.000000	154.350000	100.000000
    707120400	100.000000	153.675000	100.000000
    707120500	100.000000	148.162500	100.000000
    707120500	100.000000	149.212500	100.000000
    707120500	100.000000	155.762500	100.000000
    707120600	100.000000	164.425000	100.000000
    707120700	100.000000	167.962500	100.000000
    707120700	100.000000	165.062500	100.000000
    707120800	100.000000	161.075000	100.000000
    707120800	100.000000	158.725000	100.000000
    707120800	100.000000	157.800000	100.000000
    
    tak aby se vzdy vzal jen radek u ktereho je hodnota v prvnim sloupci poprve. To znamena, ze radky u kterych je cislo v prvnim sloupci rovno cislu predchoziho radku v prvnim sloupci se smaznou (odfiltruji). No a takoveto filtrovani probiha jen v urcitem rozmezi radku.

    Udelal jsem neco takoveho:
    awk 'BEGIN{D=707120200; while(D!=707120800){if ($1 == D){print $0} D=D+100;}}' ir2_100.txt > ir2d_100.txt
    
    Script sice vybere spravne rozmezi podle (od 707120200 az 707120800) urcene cyklem, ale nasklada tam i ty radky, u kterych se cislo prvniho sloupce uz opakuje.

    Predpokladam, ze je to zpusobeno tim, ze awk projede proste cely soubor a vybere radky kde se $1=D (tedy i ty u kterych se hodnota prvniho sloupce opakuje...) a az po tom pricte D=D+100. Je mozne nejak udelat aby se hodnota D zvysila o 100 po kazdem radku? To by snad vyresilo cely muj problem.

    Pokud mate uplne jine reseni tak se mu vubec nebranim.

    Dekuji.

    Odpovědi

    30.11.2007 20:12 Radek Podskubka | skóre: 2
    Rozbalit Rozbalit vše Re: filtrovani pomoci awk
    Omlouvam se, ale udelal jsem chybu v tom awk scriptu. Mam tam neco takoveho:
    awk '{D=707120200; while(D!=707120800){if ($1 == D){print $0} D=D+100}}' ir2_$th.txt > ir2d_$th.txt
    Takze bez begin, s tim to neslo.
    30.11.2007 20:24 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: filtrovani pomoci awk
    Na rozsah řádků bych použil head a tail. A na výpis unikátních řádků uniq -u, případně s parametrem -w. Ale nic z toho není awk :-)
    1.12.2007 09:54 macrek | skóre: 12
    Rozbalit Rozbalit vše Re: filtrovani pomoci awk
    napr. takto:
    user@dendrit:~$ cat subor
    707120200       100.000000      137.750000      100.000000
    707120200       100.000000      140.400000      100.000000
    707120200       100.000000      145.887500      100.000000
    707120300       100.000000      150.762500      100.000000
    707120400       100.000000      154.350000      100.000000
    707120400       100.000000      153.675000      100.000000
    707120500       100.000000      148.162500      100.000000
    707120500       100.000000      149.212500      100.000000
    707120500       100.000000      155.762500      100.000000
    707120600       100.000000      164.425000      100.000000
    707120700       100.000000      167.962500      100.000000
    707120700       100.000000      165.062500      100.000000
    707120800       100.000000      161.075000      100.000000
    707120800       100.000000      158.725000      100.000000
    707120800       100.000000      157.800000      100.000000
    
    user@dendrit:~$ awk '($1==707120300),($1==707120800){if(first != $1)print;first=$1;}' subor
    707120300       100.000000      150.762500      100.000000
    707120400       100.000000      154.350000      100.000000
    707120500       100.000000      148.162500      100.000000
    707120600       100.000000      164.425000      100.000000
    707120700       100.000000      167.962500      100.000000
    707120800       100.000000      161.075000      100.000000
    
    An eye for an eye makes the whole world blind.
    1.12.2007 12:50 Radek Podskubka | skóre: 2
    Rozbalit Rozbalit vše Re: filtrovani pomoci awk
    Tak jsem se inspiroval vsim resenim. Jinak dekuji za kazdy navrh. Nicmene mne to nefungovalo ani nevim proc, proste to nic nevypsalo. Proto jsem vyuzil jen tu cast ktera filtruje (2 radek) a zvlast jsem si vytvoril dalsi cast, ktera urcuje rozmezi (1 radek). No a tpotom jsem jeste zjistil, ze gnuplot mi to neprijme jako datum v tomto formatu, tak jsem jeste pridal pred vsechna cisla 0 (3 radek).

    Pisu to jen proto, kdyby nekdo potreboval podobny problem resit tak tady je taky jedna moznost.
    awk '{if ($1 > 707120000 && $1 < 707200000) print $0;}' ir2_110.txt > ir2_temporary_110.txt
    awk '{if(first != $1)print;first=$1;}' ir2_temporary_110.txt > ir2_temporary2_110.txt
    awk '{print("0"$0)}' ir2_temporary2_110.txt > ir2d_110.txt
    rm -f ir2_temporary*_110.txt
    
    1.12.2007 13:11 macrek | skóre: 12
    Rozbalit Rozbalit vše Re: filtrovani pomoci awk
    netusim, preco ti to neslo, ale aj to tvoje riesenie si kludne mohol spojit do jedneho riadku a zbytocne to neriesit cez tempfiles.
    An eye for an eye makes the whole world blind.
    1.12.2007 13:19 Radek Podskubka | skóre: 2
    Rozbalit Rozbalit vše Re: filtrovani pomoci awk
    No sak to uz je jedno. Hlavni kdyz to jede, pripadne upravy uz nebudou problem.

    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.