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

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

Re: [shell-script] Extrair campos de tamanho fixo (problema com acentuaç


From: Alysson Gonçalves de Azevedo
Subject: Re: [shell-script] Extrair campos de tamanho fixo (problema com acentuação)
Date: Tue, 9 Oct 2012 18:24:49 -0300

Luís, por curiosidade... o que tem na sua variável $LANG?


Alysson Gonçalves de Azevedo - (11) 984 917 730

"É curioso como as pessoas ficam confusas quando a frase não terminam do
jeito que elas periquito."



Em 9 de outubro de 2012 18:08, Luís Tavares <address@hidden>escreveu:

> Redhat aqui...
>
> [root@PasqualiRH ~]# echo 'aéiou' | cut -c2-3
> éi
>
>
> Luís Alberto Tavares Poli
> (16) 9715-0309
>
>
>
> Em 9 de outubro de 2012 11:02, rapha.couto <address@hidden> escreveu:
>
> > **
> >
> >
> > Olá a todos.
> >
> > Estou criando um script o qual deve extrair os dados de um arquivo com
> > campos de tamanho fixo. Estava usando o gawk pra isso. O problema é que o
> > mesmo se confunde com campos com acentuação.
> >
> > $ echo 'aeiou'|gawk -v FIELDWIDTHS='1 2 2' -v OFS=',' '{$1=$1; print}'
> > a,ei,ou
> >
> > $ echo 'aéiou'|gawk -v FIELDWIDTHS='1 2 2' -v OFS=',' '{$1=$1; print}'
> > a,é,io
> >
> > Parece que ele está contando bytes e não caracteres e como os acentos
> > possuem 2 bytes o resultado não é o esperado. Eu tentei também o cut mas
> > mesmo com a opção de seleção por caracter não deu certo:
> > $ echo 'aeiou'|cut -b 2-3
> > ei
> >
> > $ echo 'aéiou'|cut -b 2-3
> > é
> >
> > $ echo 'aéiou'|cut -c 2-3 (esse deveria funcionar)
> > é
> >
> > A única solução que eu encontrei foi usar o sed:
> > $ echo 'aéiou'|sed 's/^.\{1\}\(.\{2\}\).*$/\1/'
> > éi
> >
> > Isso resolveu o meu problema. Entretanto, o problema é que essa solução é
> > extremamente mais lenta do que as primeiras e como o arquivo é grande, o
> > processo de extração está demorando muito. Alguém conhece uma solução
> mais
> > veloz?
> >
> > 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
>
>
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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