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: Moacir Souza
Subject: Re: [shell-script] Comando sed substituir espaço em branco junto ao character
Date: Mon, 5 Dec 2011 13:53:33 -0200

     Luciano,

     Testou o iconv que Robson sugeriu? Alternativamente, veja o que
aparece nesse "espaço" quando você executa um cat -vet no arquivo.
Talvez não seja mesmo um espaço, mas outro caractere não imprimível.

[]'s,
Moacir Filho

2011/12/5 Luciano Silva <address@hidden>:
> 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]
>>
>>
>
>
> ------------------------------------
>
> ---------------------------------------------------------------------
> 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
Mestrando em Ciências da Computação
Bacharel em Engenharia da Computação
Técnico em Eletrônica
Linux user #449600
==========================================


reply via email to

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