[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 13:46:49 +0000 (GMT) |
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
> > > funciona e
> > > > > > retorna a seguinte msg :
> > > > > >
> > > > > > sed: -e expressão #1, caractere n:
> unknown
> > > option
> > > > > to
> > > > > > `s'
> > > > > >
> > > > > > não entendo porque.
> > > > > >
> > > > > >
> > > > > > --- Tiago Barcellos Peczenyj
> > > > > > <address@hidden> escreveu:
> > > > > >
> > > > > > > Use o bom e velho sed
> > > > > > >
> > > > > > > sed 's/<tag1>.*</<tag1>outracoisa</g'
> algo
> > > > > > >
> > > > > > > onde .* representa qualquer sequencia
> de
> > > > > caracteres.
> > > > > > >
> > > > > > > Em 18/10/05,
> > > > > > >
> murgent_shell<address@hidden>
> > > > > escreveu:
> > > > > > > > Olá pessoal
> > > > > > > >
> > > > > > > > Qual a maneira correta de
> substituir um
> > > > > > > determinado
> > > > > > > > conteúdo que esteja entre uma tag.
> > > > > > > >
> > > > > > > > <tag1>qqcoisa</tag1>
> > > > > > > > por
> > > > > > > > <tag1>xxxx</tag1>
> > > > > > > >
> > > > > > > > Importante: preciso substituir o
> que
> > > esta
> > > > > entre
> > > > > > > as
> > > > > > > > tags, pois o conteúdo entre tags
> eh
> > > sempre
> > > > > > > variável.
> > > > > > > >
> > > > > > > > Até +
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
>
=== 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/
- substituir texto entre tags, murgent_shell, 2005/10/18
- Re: [shell-script] substituir texto entre tags, Tiago Barcellos Peczenyj, 2005/10/18
- Re: [shell-script] substituir texto entre tags, murgent_shell, 2005/10/19
- Re: [shell-script] substituir texto entre tags, murgent_shell, 2005/10/19
- Re: [shell-script] substituir texto entre tags, Tiago Barcellos Peczenyj, 2005/10/19
- Re: [shell-script] substituir texto entre tags, murgent_shell, 2005/10/20
- Re: [shell-script] substituir texto entre tags, Tiago Barcellos Peczenyj, 2005/10/21
- Re: [shell-script] substituir texto entre tags, murgent_shell, 2005/10/21
- Re: [shell-script] substituir texto entre tags, Tiago Barcellos Peczenyj, 2005/10/21
- Re: [shell-script] substituir texto entre tags,
murgent_shell <=
- Re: [shell-script] substituir texto entre tags, Mauricio, 2005/10/27
- Re: [shell-script] substituir texto entre tags, murgent_shell, 2005/10/27
Re: [shell-script] substituir texto entre tags, Alexandre Vieira Santos, 2005/10/27