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

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

Re: [shell-script] Re: awk


From: Moacir Souza
Subject: Re: [shell-script] Re: awk
Date: Fri, 2 Jul 2010 07:38:32 -0300

     fsilva6,

     Pode ser que eu tenha entendido errado, ou que você apenas tenha
esquecido de dizer, mas qual o parâmetro para dizer quais são as
menores datas? O usuário informa uma data e você calcula as menores
que ela? Você pega as duas menores datas (como é o caso do exemplo)?
Enfim... O sort vai funcionar no AIX sim, mas ainda assim não ficou
claro como eu vou determinar quem deve ficar separado em um conjunto e
no outro.

[]'s,
Moacir Filho

2010/7/2 fsilva6 <address@hidden>:
> Amigão,
>       aplicar o filtro não é o meu maior problema no processo. Meu maior 
> problema é colocar as informações com a menor data no arquivo de localizados.
>
> Abaixo um exemplo:
>
> Arquivo de entrada.
> limão|laranja|pera|20090127
> limão|laranja|pera|20090115
> limão|laranja|pera|20090101
> limão|laranja|pera|20090130
> jaca|pera|limão|20090130
> mamao|pera|pera|20090130
> mamao|pera|pera|20090102
> manga|pera|morango|20090130
>
> O arquivo de localizados deveria ficar desta forma:    
> limão|laranja|pera|20090101
> mamao|pera|pera|20090102
>
> Enquanto o arquivo de não localizados receberia os outros registros.
>
> limão|laranja|pera|20090127
> limão|laranja|pera|20090115
> limão|laranja|pera|20090130
> jaca|pera|limão|20090130
> mamao|pera|pera|20090130
> manga|pera|morango|20090130
>
> O grande problema é como pegar a menor data, por isso ordenei o arquivo antes 
> de iniciar o processamento com o comando sort (sort -t"|" -k3 -k4).
>
>
>
> --- Em address@hidden, Supergrilo <supergrilo@...> escreveu
>>
>> Para funcionar em AIX o ideal seria usar ksh puro. Mas como não é minha
>> especialidade....
>>
>> Acho que isso deve funcionar...
>>
>> [0][fabio@Bankai:~/shell_scripts]$ cat feira.txt
>> limão|laranja|pera|20090127
>> limão|laranja|pera|20090115
>> limão|laranja|pera|20090101
>> limão|laranja|pera|20090130
>> jaca|pera|limão|20090130
>> mamao|pera|pera|20090130
>> mamao|pera|pera|20090102
>> manga|pera|morango|20090130
>>
>> [0][fabio@Bankai:~/shell_scripts]$ cat peraouuva.ksh
>> #!/bin/ksh
>>
>> for i in $(cat feira.txt); do
>>     echo ${i} | cut -d\| -f3 |grep -q pera && echo "${i}" >> localizados
>> || echo ${i} >> naolocalizado
>> done
>>
>> [0][fabio@Bankai:~/shell_scripts]$ cat localizados
>> limão|laranja|pera|20090127
>> limão|laranja|pera|20090115
>> limão|laranja|pera|20090101
>> limão|laranja|pera|20090130
>> mamao|pera|pera|20090130
>> mamao|pera|pera|20090102
>>
>> [0][fabio@Bankai:~/shell_scripts]$ cat naolocalizado
>> jaca|pera|limão|20090130
>> manga|pera|morango|20090130
>>
>>
>> Att:
>> Fábio Santos
>>
>> On 07/01/2010 10:26 PM, fsilva6 wrote:
>> >
>> >
>> > Pessoal,
>> > tenho um arquivo com o seguinte conteúdo.
>> >
>> > exemplo:
>> >
>> > limão|laranja|pera|20090127
>> > limão|laranja|pera|20090115
>> > limão|laranja|pera|20090101
>> > limão|laranja|pera|20090130
>> > jaca|pera|limão|20090130
>> > mamao|pera|pera|20090130
>> > mamao|pera|pera|20090102
>> > manga|pera|morango|20090130
>> >
>> > Preciso gerar dois arquivos, um chamado localizado e outro de não
>> > localizado.
>> >
>> > a)no arquivo de localizados teremos todos os registros onde o terceiro
>> > campo for igual a pera e a data se a menor data informada;
>> >
>> > b)no arquivo de não localizados teremos todos os registros onde o
>> > terceiro campo não for igual a pera é a data for diferente da a menor
>> > data informada, resumindo o else do item a;
>> >
>> > Eu comecei ordenando o arquivo da seguinte forma:
>> >
>> > sort -t"|" -k3 -k4
>> >
>> > Agora eu me vi totalmente sem saida, gostaria de sabe se alguém me dá
>> > alguma dica para inciar o resto da logica em AWK (o processo vai rodar
>> > no AIX)?
>> >
>> > Desde já obrigado.
>> >
>> >
>>
>>
>>
>> [As partes desta mensagem que não continham texto foram removidas]
>>
>
>
>
>
> ------------------------------------
>
> ---------------------------------------------------------------------
> 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
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
> Links do Yahoo! Grupos
>
>
>



-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Moacir da Cruz Souza Filho

-Analista de Sistemas: Suporte Unix Avançado
Serviço Federal de Processamento de Dados

-Mestrando em Ciências da Computação
Universidade de Brasília

-Bacharel em Engenharia da Computação
Escola Politécnica de Pernambuco
Universidade de Pernambuco

-Técnico em Eletrônica
Escola Técnica Federal de Pernambuco

-Linux user #449600
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=


reply via email to

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