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

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

Re: [shell-script] Comando sed substituir espaço em branco junto ao char


From: Luciano Silva
Subject: Re: [shell-script] Comando sed substituir espaço em branco junto ao character
Date: Mon, 5 Dec 2011 16:54:24 -0200

Obrigado a todos,

Vou tentar o comando iconv.

Estava tentando com o sed para tentar arrumar "na mão" já que a conversão
de mysql para postgreSQL falhou somente para alguns characteres e o dump
que eu tinha era do postgreSQL, já em utf8.

Postarei o resultado caso consiga ou não.


Luciano

Em 5 de dezembro de 2011 15:59, Jonathan Lessa
<address@hidden>escreveu:

> **
>
>
> Amigo, o space aí ficou errado, veja:
>
> $ echo "Ã " | sed 's/Ã[[:space:]]/í/g'
> í
> $ echo "Ã " | sed 's/Ã[[:space:]]/í/g'
> í
> $ echo "Ã- " | sed 's/Ã[[:space:]]/í/g''
> Ã-
>
> O primeiro comando usa um espaço em branco e o segundo um tab.
>
> Att.:
> Jonathan Lessa
>
> Em 5 de dezembro de 2011 12:34, Luciano Silva <address@hidden
> >escreveu:
>
>
> > **
> >
> >
> > Obrigado pelas respostas.
> >
> > Tentei escapar mas não funcionou
> >
> > cat teste.txt
> > subdomí nio
> > ví deo
> >
> > sed -i -e 's/\Ã\ /\í/g' text.txt
> >
> > Tentei utilizar também o [:space] mas não funcionou.
> >
> > sed -i -e 's/\Ã[:space]/\í/g' text.txt
> >
> > cat teste.txt
> > subdomí nio
> > ví deo
> >
> > Luciano
> >
> > Em 5 de dezembro de 2011 11:19, eric miranda <address@hidden>
> > escreveu:
> >
> > >
> > >
> > >
> > > Escapa o espaço "\ "
> > > Em 05/12/2011 11:11, "Luciano Silva" <address@hidden> escreveu:
> > >
> > > > **
> > > >
> > > >
> > >
> > >
> > > > Salve galera,
> > > >
> > > > Gostaria de pedir uma ajuda em um comando sed que estou tentando.
> > > >
> > > > Estou testando a migração de um banco de dados MySQL(que já tem + 10
> > anos)
> > > > para um servidor PostgreSQL. Depois de vários testes, consegui
> atingir
> > > > certo sucesso na migração. Porém, encontrei alguns problemas com a
> > > > codificação com alguns dos caracteres de latin1 para utf8.
> > > >
> > > > Gerei um comando sed para essa substituição, para ser aplicado direto
> > no
> > > > postgre.sql:
> > > >
> > > > sed -i -e 's/\Ã\£/\ã/g;s/\Ã\¡/\á/g;s/\Ã\
> > > >
> > > >
> >
> §/\ç/g;s/\Ã\‡/\Ç/g;s/\Ã\¢/\â/g;s/\Ã\€/\À/g;s/\Ã\ƒ/\Ã/g;s/\Ã\©/\é/g;s/\Ã\¨/\è/g;s/\Ã\ª/\ê/g;s/\Ã\³/\ó/g;s/\Ã\²/\ò/g;s/\Ã\´/\ô/g;s/\Ã\µ/\õ/g;s/\Ã
> > > >
> > > >
> >
> /\í/g;s/\Ã\£/\ã/g;s/\Ã\º/\ú/g;s/\Ã\¹/\ù/g;s/\Ã\µ/\õ/g;s/\Ã\µ\'/\Ò/g;s/\Ã\“/\Ó/g;s/\Ã\”/\Ô/g;s/\Ã\•/\Õ/g;s/\Ã\¬/\ì/g;s/\Ã\Œ/\Ì/g;s/\Ã\
> > > > /\Í/g;'
> > > >
> > > > Mas estou encontrando dificuldades na seguinte linha:
> > > >
> > > > sed -i -e 's/\Ã /\í/g' postgre.sql
> > > >
> > > > onde a letra A maiscula + acentuada + espaço em branco (Ã ) significa
> > o í
> > > > (letra i acentuada). Em cada ocorrencia do à seguida do espaço
> preciso
> > > > substituir por í. Funciona em separado, mas com os outros comandos
> não.
> > > > Também acredito que exista uma forma mais enxuta de aplicar o comando
> > > > acima, mas conseguinto aplicar esse comando junto já ajuda.
> > > >
> > > > Grato,
> > > >
> > > > Luciano
> > > >
> > > > [As partes desta mensagem que não continham texto foram removidas]
> > > >
> > > >
> > > >
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > >
> >
> >
> >
>
> --
> Att.:
> Jonathan Lessa
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


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



reply via email to

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