Obrigado pela ajuda mas o problema nao e trocar a expressao pois a que eu usei funciona, a questao e porque funciona campo sim, campo nao. Andei pensando e acho que talvez seja porque o primeiro '#' do campo nao, tenha sido o ultimo '#' do campo sim, ou seja:
# # #
|-----------| este e o campo sim
|-----------| este e o campo naoEntao, sera que o sed e o vi, apos terminar a troca do campo sim, procure a proxima ocorrencia da expressao apenas apos o texto ja substituido, ou seja, apos o '#' final do primeiro campo e ai o proximo campo nao ira bater com a expressao por comecar com espacos e nao com '#'.
Se for isto, vou ter que mudar a expressao ou o arquivo gerado na exportacao dos dados. Mais provavelmente o arquivo gerado na exportacao, ja que nao tem como garantir que nenhum usuario "espertinho" tenha comecado um campo com conteudo nao vazio com um ou mais espacos no inicio, tenho certeza que ja fizeram isto, ja vi alguns nomes assim e falei para eles corrigirem, mas ainda devem ter varios deste jeito :(
Mas obrigado pela interesse em ajudar, e muito bom poder contar com o espirito de grupo do pessoal daqui
Josinei
Anderson Lizardo wrote:
--- Informatica <[EMAIL PROTECTED]> escreveu:
preciso editar um arquivo texto trocando os campos em branco por um
indicador de nulo
Preciso entao que as ocorrencias de # # virem #\N#.
Estou usando o sed com o comando s/# *#/#\\N#/g
Teste esta express�o: 's/# \+#/#\\N#/g'
Use as aspas simples. Esta express�o tamb�m assume que o campo a ser
modificado seja de, no m�nimo, 1 caractere de comprimento.
Assinantes em 05/03/2003: 2237
Mensagens recebidas desde 07/01/1999: 203097
Historico e [des]cadastramento: http://linux-br.conectiva.com.br
Assuntos administrativos e problemas com a lista: mailto:[EMAIL PROTECTED]
