Bom dia Já testou assim ?
=-- Arquivo: dados --= 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 data='20090115' nawk -F\| -v dt=${data} '{ if ($3 ="pera" && $4 < dt) { print $0 > localizados } else { print $0 > naolocalizados }' < dados Obs. a data deverá ser deste formato YYYYMMDD Abraços Renato Em 2 de julho de 2010 06:57, fsilva6 <fsil...@yahoo.com.br> escreveu: > > > 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 shell-script@yahoogrupos.com.br <shell-script%40yahoogrupos.com.br>, > Supergrilo <supergr...@...> escreveu > > > > > Para funcionar em AIX o ideal seria usar ksh puro. Mas como não é minha > > especialidade.... > > > > Acho que isso deve funcionar... > > > > [0][fa...@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][fa...@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][fa...@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][fa...@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] > > > > > [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: shell-script-unsubscr...@yahoogrupos.com.br --------------------------------------------------------------------- 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 <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/shell-script/ <*> Para sair deste grupo, envie um e-mail para: shell-script-unsubscr...@yahoogrupos.com.br <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html