+ Responder ao Tópico



  1. #1
    law
    PessoAll..

    o que estou tentando fazer é o seguinte.. tenho um arquivo.tmp e quero ler o conteudo deste arquivo e fazer um replace em uma determinada palavra....ex:

    um arquivo chamado texto.tmp com o conteudo:
    teste1
    teste2
    teste3

    eu quero trocar o teste2 por:
    arquivi texto_temp.tmp
    teste50 teste51 teste52

    fiz o seguinte:
    temp=$(cat texto_temp.tmp)
    e depois:
    /bin/sed -i.bak "s/teste2/$temp/g" texto.tmp

    só que a variável $temp não assume o valor do arquivo texto_temp para fazer o replace...

    se alguem puder dar uma dica agradeço..

    tks

  2. #2
    slice
    para declarar uma variável no shell, vc deve fazer o seguinte:

    temp="`cat file`"

    e depois usar ela como $temp tipo... echo $temp

    mas note que o sinal de cráse `comando` é que é o responsável por fazer com que seja executado o comando cat no arquivo file... sem isso, o valor será apenas uma string com o valor "cat file"...

    o outro problema é que se tiver 1, 2, 3, ..., n dados no arquivo file, o valor da variável será 1, 2, 3, ..., n e não um dado em específico...



  3. law,

    Seu comando está correto. Pelo menos testei no bash e funcionou.

    vinicius@slackware:~# sed "s/teste2/$temp/g" texto.tmp
    teste1
    teste50 teste51 teste52
    teste3

    Apresenta algum erro pra vc? Que shell vc usa?
    Tenta proteger a variavel com apostofre (em alguns shell ocorre problema parecido)

    Ou então assim:
    sed "s/teste2/${temp}/g" texto.tmp

    Abraços.

  4. #4
    law
    então..

    a variável é:
    teste="`cat temp.tmp`"

    e quando executo me retorna erro:

    $sed "s/<\/BLABLA>/$teste/g" saida.txt
    sed: -e expression #1, char 28: Unknown option to `s'

    $sed "s/<\/BLABLA>/${teste}/g" saida.txt
    sed: -e expression #1, char 28: Unknown option to `s'


    se eu conseguir executar a variavel no sed será massa.

    tks
    law






Tópicos Similares

  1. ssh security shell
    Por roggy no fórum Servidores de Rede
    Respostas: 2
    Último Post: 17-12-2002, 12:28
  2. Shell Script !!! Executar comando automático...
    Por Danielvb no fórum Linguagens de Programação
    Respostas: 11
    Último Post: 29-11-2002, 15:48
  3. Shell Script !!!
    Por Danielvb no fórum Servidores de Rede
    Respostas: 2
    Último Post: 29-11-2002, 09:55
  4. Executar script shell a partir de PHP
    Por no fórum Linguagens de Programação
    Respostas: 1
    Último Post: 25-11-2002, 17:08
  5. Servidor/Proverdor de contas Shell
    Por no fórum Servidores de Rede
    Respostas: 4
    Último Post: 06-11-2002, 14:50

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L