[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