faça um debug awk '{print "linha"NR" -> tamanho "length($0)" 32 primeiros caracteres"substr($0, 0, 33) }' arquivo
de repente *todas* as suas linhas são inválidas... Em 31/01/06, IGOR <[EMAIL PROTECTED]> escreveu: > Gentil, > Coloquei o script dessa forma abaixo, já parametrizado com as validações, > mas ele fala que todas linhas estão inválidas. > Abaixo do script, estou colocando uma linha do meu arquivo.txt para ajudar. > > #!/usr/bin/awk -f > BEGIN {len = 1411} > {string = "01BR ICBR "} > > { > if ((length($0) < len) || (substr($0, 0, 33) != string)) { > printf "Linha %s é inválida\n", $0 > } > } > > > Linha do arquivo.txt: > 01BR ICBR 0010058352 00000000000000000000101 > REST LANCH APARECIDA LTDA ME 28 RESTAURANTES > 02473706000104 ROD PRES DUTRA, S/N > KM 70 DUTRA > APARECIDA SP > BRASIL > 12570000 12.3165.1528 LEO 000005 > A1984120100000000 > > > 0000000000000000000000000000000000000000 > 8102 8101 > OUTROS OUTROS > N/A > 01ATIVO D POT D - ATE 499 LTS/ANO > Y02ABATIMENTO EM NOTA FISCAL > 3502507 02TRADITIONAL 027 dias sem desconto > 031 X SEMANA 03 HORECA > 02 PRE-VENDA 24 hrs > > > > Obrigado > > > > > > > > > De:shell-script@yahoogrupos.com.br > > Para:"Lista Shell-Script" shell-script@yahoogrupos.com.br > > Cópia: > > Data:Tue, 31 Jan 2006 10:32:43 -0200 > > Assunto:Re: [shell-script] Usando AWK > > > Correção: > > > > #!/usr/bin/awk -f > > BEGIN { > > len = 20 > > string = "12312312312312312312312312312312" > > } > > > > { > > if ((length($0) < len) || (substr($0, 0, 33) != string)) { > > printf "Linha %s é inválida\n", $0 > > } > > } > > > > Depois li seu e-mail melhor. Creio que você queira || (ou) e não && (e), > como > > estava no e-mail anterior. > > > > -- > > Gentil de Bortoli Júnior > > Chave GPG: http://gentil.bortoli.com.br/gpg > > > > "There Is No Gene For The Human Spirit" > > > > > > --------------------------------------------------------------------- > > 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: [EMAIL PROTECTED] > > --------------------------------------------------------------------- > > 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 > > > > > > > > > > > > > > > > > > > > > Igor Rodrigues Damiano > > > [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: [EMAIL PROTECTED] > --------------------------------------------------------------------- > 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 > > > > > > > Yahoo! Grupos, um serviço oferecido por: > > PUBLICIDADE > > ________________________________ 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: > [EMAIL PROTECTED] > > O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do > Yahoo!. -- Tiago B Peczenyj Linux User #405772 echo 435991959574767208964049173891616024402182829083447460457482P | dc --------------------------------------------------------------------- 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: [EMAIL PROTECTED] --------------------------------------------------------------------- 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: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html