shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] para complicar mais (parte II)


From: Adam Victor Nazareth Brandizzi
Subject: Re: [shell-script] para complicar mais (parte II)
Date: Tue, 15 Mar 2005 09:38:11 -0400

Use a opção '-n' do sort

$ cat numeros
1
2
22
211
111

$ sort numeros
1
111
2
211
22

$ sort -n numeros
1
2
22
111
211

Em Ter, 2005-03-15 às 04:12 -0800, Rodrigo Monteiro escreveu:
> ok, gentil o sort resolvou o meu problema nesse ls.
> agora me surgiu outro problema.
> no meu script eu gero um arquivo login_ok_orgao.txt
> com todos os orgaos que se logaram no dia anterior sem
> repeticao, gero tbm o arquivo login_ok_usuarios com
> todos os usuarios de todos os orgaos que se logaram no
> dia anterior tbm sem repeticao, e a partir desses dois
> arquivos gero um terceiro para me dizer o total de
> usuarios por orgao (sem repeticao de usuario ou orgao)
> logados on dia anterior. isso eu consigo fazer, mas a
> ordenacao que ele me da eh por ordem alfabetica. eu
> queria que tivesse a ordenacao por ordem decrescente
> do numero de usuarios logado no orgao. aqui esta o
> script e os arquivos.
> 
> 
> parte do script
> ==========
> grep $datacerta /usr/local/jabber-1.4.2/record.log |
> grep "login ok" >
> /usr/local/jabber-1.4.2/usr/trafego_login_ok.txt
> cat /usr/local/jabber-1.4.2/usr/trafego_login_ok.txt |
> cut -d" " -f2 | cut -d"." -f1 | sort -u >
> /usr/local/jabber-1.4.2/usr/trafego_login_ok_orgao.txt
> cat /usr/local/jabber-1.4.2/usr/trafego_login_ok.txt |
> cut -d" " -f2 | cut -d"@" -f1 | sort -u >
> /usr/local/jabber-1.4.2/usr/trafego_login_ok_usuario.txt
> totalsemrepeticoes=0
> while read LINHA ; do
>     totalorgao=`cat
> /usr/local/jabber-1.4.2/usr/trafego_login_ok_usuario.txt
> | grep "^$LINHA\." | wc -l`
>     echo "<tr><td align=left><font face=verdana
> size=2>" $LINHA "</font></td><td align=right><font
> face=verdana size=2>" $totalorgao "</font></td></tr>"
> >>
> /usr/local/jabber-1.4.2/usr/login_orgao_$dia-$mes-$ano.htm
>     totalsemrepeticoes=$(($totalsemrepeticoes +
> $totalorgao))
> done <
> /usr/local/jabber-1.4.2/usr/trafego_login_ok_orgao.txt
> ==========
> 
> trafego_login_ok
> ===========
> 20050314T08:23:55 address@hidden
> login ok 172.19.0.132 Sead
> 20050314T08:45:06 address@hidden
> login ok 172.19.0.132 Sead
> 20050314T08:49:03 address@hidden login
> ok 172.28.7.227 sead
> 20050314T09:49:58 address@hidden login
> ok 172.28.9.147 SEAD
> 20050314T10:12:34 address@hidden
> login ok 172.25.51.162 SEAD
> 20050314T10:12:52 address@hidden
> login ok 172.25.138.85 SEAD
> 20050314T10:16:55 address@hidden login
> ok 200.129.18.27 SEAD
> 20050314T10:20:40 address@hidden login
> ok 172.18.7.21 SEAD
> 20050314T10:23:39 address@hidden login ok
> 172.19.0.42 sead
> 20050314T10:25:41 address@hidden login
> ok 172.28.42.104 sead
> 20050314T10:27:12 address@hidden
> login ok 172.19.0.106 sead
> 20050314T10:29:27 address@hidden login
> ok 172.28.8.243 SEAD
> ===========
> 
> parte do trafego_login_ok_orgao
> ===========
> SDLR
> SSPDS
> arce
> cagece
> cogerh
> correg
> decon
> dert
> detran
> ematerce
> funceme
> gabgov
> idace
> idt
> ===========
> 
> 
> parte do trafego_login_ok_usuario
> ===========
> SDLR.GUSTAVO
> SDLR.Michelle
> SDLR.ivolemos
> SSPDS.Cristiane
> arce.filiperangel
> arce.robson
> cagece.claudomiro
> cagece.darcio
> cagece.felipe
> cagece.jerusaamorim
> cagece.mazem
> cagece.saulo
> cogerh.tamara
> correg.cesar
> decon.laurinha
> decon.marcelus
> ===========
> 
> parte do resultado
> ===========
> SDLR       3
> SSPDS       1
> arce       2
> cagece       6
> cogerh       1
> correg       1
> decon       3
> dert       6
> detran      45
> ematerce      14
> funceme       1
> gabgov      17
> idace       3
> ===========
> 
> eh esse resultado que eu gostaria que ficasse ordenado
> decrescentemente pelo numero do orgao, ou seja
> 
> resultado que eu quero
> ===========
> detran      45
> ematerce      14
> gabgov      17
> cagece       6
> dert       6
> SDLR       3
> decon       3
> idace       3
> arce       2
> SSPDS       1
> cogerh       1
> correg       1
> funceme       1
> ===========
> 
> 
> 
> --- Gentil de Bortoli Jnior <address@hidden>
> wrote:
> > Uma idia:
> > 
> > Voc pode adicionar um 'sort -nr' logo aps o uniq
> > -c.
> > 
> > ... | uniq -c | sort -nr | ...
> > 
> > []s
> > 
> > Gentil.
> > 
> > Rodrigo Monteiro wrote:
> > > ls /usr/local/jabber-1.4.2/spool/im.ceara.gov.br/
> > |
> > > cut -d. -f1 | uniq -c | awk '{print "<tr><td
> > > align=left><font face=verdana size=2>" $2
> > > "</font></td><td align=right><font face=verdana
> > > size=2>" $1 "</font></td></tr>"}' >>
> > > usuarios_$dia-$mes-$ano.htm
> > > 
> > > a saida dele eh essa:
> > > 
> > > ============
> > > ...
> > >     142 srh
> > >      66 sspds
> > >     146 tce
> > >       2 tcm
> > >      24 tvceara
> > > ...
> > > =============
> > > 
> > > queria que a saida fosse assim:
> > > 
> > > ============
> > > ...
> > >     142 srh
> > >     146 tce
> > >      66 sspds
> > >      24 tvceara
> > >       2 tcm
> > > ...
> > > =============
> > 
> 
> 
>               
> __________________________________ 
> Do you Yahoo!? 
> Yahoo! Small Business - Try our new resources site!
> http://smallbusiness.yahoo.com/resources/ 
> 
> 
> ---------------------------------------------------------------------
> Esta lista no admite a abordagem de outras liguagens de programao, como perl, 
> C etc. Quem insistir em no seguir esta regra ser moderado sem prvio aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista  moderada de acordo com o previsto em 
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
>  
> Links do Yahoo! Grupos
> 
> 
> 
> 
>  
> 
> 
> 
-- 
Adam Victor Nazareth Brandizzi
Estudante de Ciência da Computação - UnB
Jabber: address@hidden




reply via email to

[Prev in Thread] Current Thread [Next in Thread]