[shell-script] Alterar texto

2008-07-01 Por tôpico Anderson
Tenho um texto com 1 linhas onde tenho a seguinte situção."Texto
texto. texto texto texto texto (continua . . .)" Como faço para sempre
que ocorrer a string ". texto "(ponto espaço texto) eu tranforme o "t"
logo após o espaço em "T", ou seja , "Texto texto. Texto texto texto
texto . . .".
Consigo fazer com o sed informando todos os casos sed 's/\. a/\. A/g',
sed 's/\. b/\. B/g' . . . Existe uma forma mais elegante ?  



Re: [shell-script] Alterar texto

2008-07-01 Por tôpico Flavio Junior
$ sed 's/\.\ [a-z]/\U&/g' arquivo.txt

--

Flávio do Carmo Júnior aka waKKu

2008/7/1 Anderson <[EMAIL PROTECTED]>:
> Tenho um texto com 1 linhas onde tenho a seguinte situção."Texto
> texto. texto texto texto texto (continua . . .)" Como faço para sempre
> que ocorrer a string ". texto "(ponto espaço texto) eu tranforme o "t"
> logo após o espaço em "T", ou seja , "Texto texto. Texto texto texto
> texto . . .".
> Consigo fazer com o sed informando todos os casos sed 's/\. a/\. A/g',
> sed 's/\. b/\. B/g' . . . Existe uma forma mais elegante ?
>
> 


[shell-script] Problemas com Sed e "Ou"

2008-07-01 Por tôpico Christian Silva
Boa tarde, estou com um problema no seguinte script:

#!/usr/bin/bash
#set -v
# Define o range que sera utilizado na busca
srcDate=$(/xxx//xx/TimeRetrieval.pl -17400 | cut -c-15)

rm Report.out 2> /dev/null

for log in `cat logsIN`;do
type=IN
logFile=$(echo $log|cut -f1 -d,)
srcPattern=$(echo echo $log|cut -f2 -d","|sed 's/-/ /g')
count=$(cd /zzz/yyy; egrep -c "XXX.*$srcDate.*$srcPattern"
$logFile)
echo ${logFile}_${type}=${count} >> Report.out
done;

for log in `cat logsOUT`;do
type=OUT
logFile=$(echo $log|cut -f1 -d,)
srcPattern=$(echo echo $log|cut -f2 -d","|sed 's/-/ /g')
count=$(cd /zzz/yyy; egrep -c "XXX.*$srcDate.*$srcPattern"
$logFile)
echo ${logFile}_${type}=${count} >> Report.out
done;

# envia o e-mail para o destinatario definido em "recipient"
[EMAIL PROTECTED]
mail $recipient << ENDMAIL
To: $recipient
Subject: `hostname` - Monitoring Script

`cat zrpReport.out | sed -e 's/(IDKFA|XYQ|XBBQ|\.log)//g'` # PROBLEMA

ENDMAIL

__

O problema se dá  na hora do sed, que não está processando o "ou"

O arquivo zrpReport segue o seguinte padrão:

$ cat Report.out
IDKFAasdfgkklhXBBQ.log_OUT=0
asdfgXYQ.log_OUT=0


E no sed eu preciso remover: IDKFA,XYQ,XBBQ e .log e algum outro padrao que
eu vá adicionar
Algum norte a respeito disso? O sed simplesmente não funciona.



-- 
Obrigado,
Christian Gabriel


[As partes desta mensagem que não continham texto foram removidas]



Re: [shell-script] Problemas com Sed e "Ou"

2008-07-01 Por tôpico Reinaldo de Carvalho
>
> `cat zrpReport.out | sed -e 's/(IDKFA|XYQ|XBBQ|\.log)//g'` # PROBLEMA
>
> O problema se dá  na hora do sed, que não está processando o "ou"
>

$(sed -re 's/(IDKFA|XYQ|XBBQ|\.log)//g' zrpReport.out)

você precisa escapar os parenteses ou usar -r.

-- 
Reinaldo de Carvalho
http://korreio.sf.net
http://python-cyrus.sf.net


Re: [shell-script] Problemas com Sed e "Ou"

2008-07-01 Por tôpico Christian Silva
Muito obrigado, o script agora funcionou perfeitamente!

2008/7/1 Reinaldo de Carvalho <[EMAIL PROTECTED]>:

>   >
> > `cat zrpReport.out | sed -e 's/(IDKFA|XYQ|XBBQ|\.log)//g'` # PROBLEMA
> >
> > O problema se dá na hora do sed, que não está processando o "ou"
> >
>
> $(sed -re 's/(IDKFA|XYQ|XBBQ|\.log)//g' zrpReport.out)
>
> você precisa escapar os parenteses ou usar -r.
>
> --
> Reinaldo de Carvalho
> http://korreio.sf.net
> http://python-cyrus.sf.net
>  
>



-- 
Obrigado,
Christian Gabriel


[As partes desta mensagem que não continham texto foram removidas]