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

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

Re: [shell-script] substituir texto entre tags


From: murgent_shell
Subject: Re: [shell-script] substituir texto entre tags
Date: Thu, 27 Oct 2005 21:37:43 +0000 (GMT)

mesma msg ... acho que esse eh um problema NP HARD.
o pior eh que não entendo o que tá ocorrendo.

--- Mauricio <address@hidden> escreveu:

> Oi...
> Tenta
> 
> sed 's/<fs:JobStarted>.*/${x}/g' teste.dat >
> 
> Abraćo
> Ricio
> 
> 
> murgent_shell wrote:
> > qdo coloco o echo na frente (echo  sed
> > 's/<fs:JobStarted>.*/'$x'/g' teste.dat > x.dat) o
> que
> > vejo eh tudo ocorrendo de forma correta, ou seja,
> x eh
> > devidamente "resolvido"
> > 
> > tenho estado a dias em cima deste script e nada de
> > resolver isso.
> > 
> > --- Tiago Barcellos Peczenyj
> > <address@hidden> escreveu:
> > 
> > 
> >>TA
> >>
> >>faz o seguinte: coloca um echo na frente do sed.
> >>
> >>de repente $x tem algo que o sed não gosta dentro
> >>dele...
> >>
> >>
> >>Em 21/10/05,
> >>murgent_shell<address@hidden>
> escreveu:
> >>
> >>> --- Tiago Barcellos Peczenyj
> >>> <address@hidden> escreveu:
> >>>
> >>> > Tche,
> >>> >
> >>> > 1) qual a mensagem de erro ?
> >>>
> >>> sed: -e expressão #1, caractere 23:
> unterminated
> >>
> >>`s'
> >>
> >>> command
> >>>
> >>> > 2) experimenta trocar assim: sed
> >>> > 's/<fs:JobStarted>.*/'"${x}"'/g'
> >>> > teste.dat > x.dat
> >>>
> >>> mesma coisa
> >>>
> >>> > 3) vc tem controle sobre o arq.dat, teste.dat
> e
> >>
> >>o
> >>
> >>> > x.dat ? tipo se vc
> >>> > pegar o resultado de $x que vc escreve na
> tela,
> >>> > jogar no linha do sed
> >>> > acima, vc tem o resultado que vc quer ? está
> >>
> >>tudo
> >>
> >>> > como vc imagina ?
> >>>
> >>> sim tudo certo, o que percebo eh que se x
> receber
> >>
> >>o
> >>
> >>> valor de um comando ou expressão dá pau!!!
> >>>
> >>> Tô tentando de tudo, mas não funciona.
> >>>
> >>>
> >>> > Em 20/10/05,
> >>> > murgent_shell<address@hidden>
> >>
> >>escreveu:
> >>
> >>> > >
> >>> > >  Tiago muito obrigado pela força, mas eu
> sou
> >>
> >>um
> >>
> >>> > mortal
> >>> > >  medíocre mesmo, não estou entendo...
> >>> > >
> >>> > >  tenho o seguinte script:
> >>> > >
> >>> > >  #!/bin/bash
> >>> > >
> >>> > >  logFile="arq.dat"
> >>> > >
> >>> > >  func()
> >>> > >  {
> >>> > >  x=$(echo $LINHA | sed -u -e s/[][\']//g -e
> >>> > >  s/:[0-9][0-9][0-9]// | awk -F" " '{print $1
> >>
> >>$2 $6
> >>
> >>> > >  $12}')
> >>> > >
> >>> > >  sed 's/<fs:JobStarted>.*/'$x'/g' teste.dat
> >
> >>> > x.dat
> >>> > >  }
> >>> > >
> >>> > >  func1()
> >>> > >  {
> >>> > >  echo $LINHA
> >>> > >  }
> >>> > >
> >>> > >  tail -f $logFile --lines=1 | while read
> >>
> >>LINHA; do
> >>
> >>> > >
> >>> > >  case $LINHA in
> >>> > >  *of:105*) func $LINHA
> >>> > >  ;;
> >>> > >  *of:107*) func1 $LINHA
> >>> > >  ;;
> >>> > >  esac;
> >>> > >
> >>> > >  done
> >>> > >
> >>> > >
> >>> > >  Se eu imprimir o $x (dentro da função)
> vejo
> >>
> >>o
> >>
> >>> > conteúdo
> >>> > >  correto, se eu coloco como esta no script
> >>> > >
> >>> > >  sed 's/<fs:JobStarted>.*/'$x'/g' teste.dat
> >
> >>> > x.dat
> >>> > >
> >>> > >  a msg de erro permanece, jpa fiz esse
> script
> >>
> >>de
> >>
> >>> > "mil
> >>> > >  formas" diferentes, mas não consigo
> >>
> >>entender.
> >>
> >>> > >
> >>> > >  se $x fosse resultado de uma atribuição
> >>
> >>simples
> >>
> >>> > como
> >>> > >  a=7 funciona tb.
> >>> > >
> >>> > >  ????????????????????????????????????????
> >>> > >
> >>> > >
> >>> > >
> >>> > >  --- Tiago Barcellos Peczenyj
> >>> > >  <address@hidden> escreveu:
> >>> > >
> >>> > >  > Tenta assim:
> >>> > >  >
> >>> > >  > sed 's/data/'"`date`"'/g' arquivo
> >>> > >  >
> >>> > >  > a sequencia é aspas simples, aspas
> duplas,
> >>> > crase,
> >>> > >  > comando, crase,
> >>> > >  > aspas duplas, aspas simples
> >>> > >  >
> >>> > >  > ou
> >>> > >  >
> >>> > >  > sed 's/data/'"$(date)"'/g' arquivo
> >>> > >  >
> >>> > >  > substitui a crase por $(comando)
> >>> > >  >
> >>> > >  > Em 19/10/05,
> >>> > >  > murgent_shell<address@hidden>
> >>> > escreveu:
> >>> > >  > >
> >>> > >  > >  tenho um script que estou fazendo isso
> >>
> >>aí
> >>
> >>> > >  > >
> >>> > >  > >  x=`date`
> >>> > >  > >  sed "s/coisa/$x/" arq
> >>> > >  > >
> >>> > >  > >  TUDO FUNCIONA, mas em outro script
> não
> 
=== message truncated ===



        


        
                
_______________________________________________________ 
Promoção Yahoo! Acesso Grátis: a cada hora navegada você
acumula cupons e concorre a mais de 500 prêmios! Participe!
http://yahoo.fbiz.com.br/


reply via email to

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