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 02:20 | Zajímavý článek

David Revoy, autor open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu, upozorňuje na svém blogu, že nový Inkscape 0.92 rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Problém by měl být vyřešen v Inkscape 0.92.2 [reddit].

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

Øyvind Kolås, hlavní vývojář grafických knihoven GEGL a babl, které využívá grafický program GIMP, žádá o podporu na Patreonu. Díky ní bude moci pracovat na vývoji na plný úvazek. Milník 1000 $, který by stačil na holé přežití, se již téměř podařilo vybrat, dalším cílem je dosažení 2500 $, které mu umožní běžně fungovat ve společnosti.

xkomczax | Komentářů: 12
21.1. 23:54 | Pozvánky

DevConf.cz 2017, již devátý ročník jedné z největších akcí zaměřených na Linux a open source ve střední Evropě, proběhne od pátku 27. ledna do neděle 29. ledna v prostorách Fakulty informačních technologií Vysokého učení technického v Brně. Na programu je celá řada zajímavých přednášek a workshopů. Letos je povinná registrace.

Ladislav Hagara | Komentářů: 0
21.1. 22:11 | Nová verze

Byla vydána verze 1.0.0 emulátoru terminálu Terminology postaveného nad EFL (Enlightenment Foundation Libraries). Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
20.1. 17:00 | Nová verze

Byl vydán Docker 1.13. Přehled novinek na YouTube a v poznámkách k vydání na GitHubu. Docker umožňuje běh aplikací v softwarových kontejnerech (Wikipedia).

Ladislav Hagara | Komentářů: 4
20.1. 15:51 | Komunita

Mozilla.cz informuje, že nástroje pro webové vývojáře se možná oddělí od Firefoxu a stanou doplňkem. Nástroje pro webové vývojáře prošly velkým přepisem a tým, který se stará o jejich vývoj, by uvítal možnost jejich častějších aktualizacích nezávisle na vydávání nových verzí Firefoxu.

Ladislav Hagara | Komentářů: 10
20.1. 07:00 | Humor

Čtenářům AbcLinuxu vše nejlepší k dnešnímu Dni zvýšení povědomí o tučňácích (Penguin Awareness Day).

Ladislav Hagara | Komentářů: 0
20.1. 06:00 | Komunita

Bylo spuštěno hlasování o přednáškách a workshopech pro letošní InstallFest, jenž proběhne o víkendu 4. a 5. března v Praze. Současně byla oznámena změna místa. InstallFest se letos vrací zpět na Karlovo náměstí do budovy E.

Ladislav Hagara | Komentářů: 0
20.1. 02:48 | Komunita

Greg Kroah-Hartman potvrdil, že Linux 4.9 je jádrem s prodlouženou upstream podporou (LTS, Long Term Support). Podpora je plánována do ledna 2019. Aktuální jádra s prodlouženou podporou jsou tedy 3.2, 3.4, 3.10, 3.12, 3.16, 3.18, 4.1, 4.4 a 4.9.

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

Výrobce síťových prvků, společnost Netgear, spustila nový program, který slibuje vývojářům, expertům, ale i běžným uživatelům vyplacení finanční odměny za nalezení bezpečnostních chyby v jejich produktech. Za nalezení zranitelnosti v hardware, API nebo mobilní aplikaci nabízí odměnu od 150 do 15 tisíc dolarů (dle závažnosti).

Michal Makovec | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (10%)
 (2%)
 (74%)
 (3%)
 (10%)
Celkem 363 hlasů
 Komentářů: 25, poslední 21.1. 13:34
Rozcestník
Reklama

Dotaz: Filtr (LAST LOG)

pepe_ avatar 21.6.2013 18:41 pepe_ | skóre: 46
Filtr (LAST LOG)
Přečteno: 221×

Potřebuji od někoho zkušeného nejjednodužší způsob jak přečíst log.log ve kterém jsou takovéto řádky :

23.05.2013 04:47:15 MJ7HST
24.01.2013 01:23:37 Y02HAL
18.02.2013 03:38:05 RY7HRO
10.04.2013 23:48:43 NL4SNE
01.05.2013 09:47:33 MJ7HST

datum , čas , uživatel (různá délka jména ale žádné mezery)

potřebuji vypsat pouze poslední záznam každého uživatele (filtr posledního logu pro všechny uživatele)

 

Napadá někoho elegantní řešení (awk , sed nebo kdo ví co na to použít) ?

 

Děkuju ...


Řešení dotazu:


Odpovědi

21.6.2013 21:17 jekub
Rozbalit Rozbalit vše Re: Filtr (LAST LOG)
sort (uzivatel, datum a cas sestupne), readline, pri kazde zmene uzivatele vypsat
pepe_ avatar 22.6.2013 11:57 pepe_ | skóre: 46
Rozbalit Rozbalit vše Re: Filtr (LAST LOG)

cat log.log | awk '{print $3";"$1";"$2}' | sort -r

udělá :

GM1GVM;12.02.2012;14:30:14
D1SKY;16.09.2012;23:08:01
DX0ML;15.01.2013;08:08:39

ale jak dál bez dlouhého patlání v IF a pracovních proměnných ?

23.6.2013 16:53 jekub
Rozbalit Rozbalit vše Re: Filtr (LAST LOG)
#/bin/bash

function print_last_log() {
   if [ $USER != $3 ]; then
      echo $1 $2 $3
      USER=$3
   fi
}

sort -k3 -k1.7nr -k1.4nr -k1nr -k2r log.log | \
while read LINE; do
   print_last_log  $LINE
done
23.6.2013 16:56 jekub
Rozbalit Rozbalit vše Re: Filtr (LAST LOG)
#/bin/bash - chybi !
23.6.2013 16:29 Kriegel
Rozbalit Rozbalit vše Re: Filtr (LAST LOG)
asi to nebude nejjednodussi, ale slozite to taky neni...

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

my %lastlog;
open (my $fh,"<","./log.log");
while (<$fh>){
    chomp;
    my ($date, $time, $user) = split " ", $_;
    $lastlog{$user} = $date." ".$time;
}
close $fh;
print "$_\t$lastlog{$_}\n" foreach (keys %lastlog);
23.6.2013 18:46 NN
Rozbalit Rozbalit vše Re: Filtr (LAST LOG)
50c: Vstup:
23.05.2013 04:47:15 MJ7HST
23.05.2013 04:47:18 MJ7HST
24.01.2013 01:23:37 Y02HAL
18.02.2013 03:38:05 RY7HRO
10.04.2013 23:48:43 NL4SNE
01.05.2013 09:47:33 MJ7HST
24.01.2013 01:25:37 Y02HAL
26.01.2013 01:25:37 Y02HAL
10.05.2013 23:48:43 NL4SNE
cat log.log | sort -k 3 -rk 1 -k 2 | uniq -s 20
Vystup:
26.01.2013 01:25:37 Y02HAL
18.02.2013 03:38:05 RY7HRO
10.05.2013 23:48:43 NL4SNE
23.05.2013 04:47:18 MJ7HST
23.6.2013 21:31 potato
Rozbalit Rozbalit vše Re: Filtr (LAST LOG)
To myslím setřídilo pouze se štěstím, protože pro jiný vstup by to narazilo na ten idiotsky netříditelný formát data...
23.6.2013 21:58 NN
Rozbalit Rozbalit vše Re: Filtr (LAST LOG)
Mas pravdu musel bych nejprve sed-em obratit den/mesic(u casoveho udaje to nevadi..), potom je to podle meho nazoru v poradku, tedy:
 cat test.txt | sed -r 's/(.+)\.(.+)\.(.+)/\2\.\1\.\3/' | sort -k 3 -rk 1 -k 2 | uniq -s 20
Ten sed by mohl byt samozrejme prisnejsi..
pepe_ avatar 24.6.2013 20:39 pepe_ | skóre: 46
Rozbalit Rozbalit vše Re: Filtr (LAST LOG)

Děkuji za nápady , určitě něco použiji .

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.