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

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

RES: [shell-script] Otimizacao codigo


From: Rodolfo Villanova
Subject: RES: [shell-script] Otimizacao codigo
Date: Fri, 20 Aug 2004 19:05:46 -0300

Grande Prof. Julio Neves!

Parabéns pela dica!

Eu (e creio que uma 'galera') também gostaria de saber como é essa sintaxe
também no BSD.

Muito grato e um grande abraço, companheiro!
------------------------------
Rodolfo D. Gross Villanova

> -----Mensagem original-----
> De: Julio Cezar Neves - DATAPREVRJ
> [mailto:address@hidden]
> Enviada em: sexta-feira, 20 de agosto de 2004 18:46
> Para: address@hidden
> Assunto: RES: RES: RES: [shell-script] Otimizacao codigo
>
>
>
> Frederico,
> se o seu negócio é otimizar *MESMO* :), ai vai:
>
> sort -t'/' -k 3.1,3.2 -k 1.8,1.9 -k 2.1,2.2 t2
>        11/24/04 DAJ262         full DATA.AA.188
>        11/24/04 DAJ263         full DATA.AA.189
>        03/24/05 DAJ282         full AIX.AA.001
>        06/04/05 DEG622         full ARCHIVE.AA.001
>        06/06/05 DAJ106         full AIX.AA.002
>        06/06/05 DEG619         full ARCHIVE.AA.002
>        06/06/05 DEG620         full ARCHIVE.AA.003
>        07/29/13 DAJ200         full DATA.AA.134
>
> onde:
> -t informa o separador de campos;
> -k informa as posições dentro de cada campo, no formato
> campo.pos_ini,campo.pos_fim
>
> Eu supuz que a sua data estava no formato mm/dd/aa então as
> minhas chaves de
> classificação (-k) foram:
>
> 3.1,3.2 - terceiro campo da posição 1 a 2 (ano);
> 1.8,1.9 - primeiro campo da posição 8 a 9 (mes). Comecei na 8 para ignorar
> os brancos iniciais;
> 2.1,2.2 - segundo campo da posição 1 a 2.
>
> Caso não seja esta a ordem pretendida, vc já tem as ferramentas
> para usar do
> jeito que vc quiser.
>
> Esta sintaxe só vale para o GNU sort. Caso vc esteja usando *BSD ou algum
> sabor UNIX (ao qual eu tenha acesso), me avise que mando a
> sintaxe correta.
>
> Julio Cezar Neves
> - Programa de Software Livre -
> Tel:+55 21 2528-7070 / +55 21 8112-9988
> Fax: +55 21 2528-7646
> mailto:address@hidden
>
>
> | >> -----Mensagem original-----
> | >> De: address@hidden
> | >> [mailto:address@hidden]
> | >> Enviada em: sexta-feira, 20 de agosto de 2004 09:40
> | >> Para: address@hidden
> | >> Assunto: [shell-script] Otimizacao codigo
> | >>
> | >>
> | >>
> | >> Um determinado comando me produz a saída:
> | >>
> | >>        expires barcode          (%) volume
> | >>        03/24/05 DAJ282         full AIX.AA.001
> | >>        06/06/05 DAJ106         full AIX.AA.002
> | >>        06/04/05 DEG622         full ARCHIVE.AA.001
> | >>        06/06/05 DEG619         full ARCHIVE.AA.002
> | >>        06/06/05 DEG620         full ARCHIVE.AA.003
> | >>        07/29/13 DAJ200         full DATA.AA.134
> | >>        11/24/04 DAJ262         full DATA.AA.188
> | >>        11/24/04 DAJ263         full DATA.AA.189
> | >>
> | >> Preciso desta saída ordenada pelo primeiro campo (expires -
> | >> data). Consegui
> | >> isto fazendo:
> | >>
> | >>       cat t2 | awk '{print substr($0,8,2)$0;}' | sort | awk '{print
> | >> substr($0,4,60);}'
> | >>
> | >> Alguém sugere um código mais elegante para fazer a mesma coisa (se
> | >> possível, melhor)?
> | >>
> | >>
> | >> Obrigado.
> |
> |
> |
> |
> |
> |
> | ---------------------------------------------------------------------
> | 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
>
>
>
>
>
>
>
>
> ---------------------------------------------------------------------
> 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











reply via email to

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