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: Luis Tiani
Subject: Re: [shell-script] para complicar mais (parte II)
Date: Tue, 15 Mar 2005 10:06:15 -0300

Podre, mas deve resolver:


$ sed 's/\(.*\)\ \(.*\)/\2\ \1/' teste.txt | sort -n | sed 's/\(.*\)\
\(.*\)/\2\ \1/'

-> Note que o sed tá procurando um espaco em branco como delimitador
das colunas, vc só precisa trocar pelo delimitador de colunas da sua
saída....Pelo seu e-mail são 6 espaços.... vee aí... se for "tab", use
\t\ onde tem \ \ ......

Luis Tiani



On Tue, 15 Mar 2005 04:54:04 -0800 (PST), Rodrigo Monteiro
<address@hidden> wrote:
> 
> eu ja uso o sort -n, o problema eh que agora gero o
> ultimo arquivo com 2 colunas e a primeira eh o nome do
> orgao e a segunda eh a quantidade de pessoas do orgao,
> entao se der o sort -n ele vai ordenar pelo orgao, e
> nao pelo numero de usuarios do orgao.
> 
> --- Adam Victor Nazareth Brandizzi
> <address@hidden> wrote:
> 
> > 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
> >
> >
> >
> 
> __________________________________
> Do you Yahoo!?
> Yahoo! Small Business - Try our new resources site!
> http://smallbusiness.yahoo.com/resources/
> 
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como 
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
> 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
> 
> 
> 
> 
> 


-- 
Luis Tiani
São Paulo-SP


reply via email to

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