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

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

Re: [shell-script] Comando grep


From: Fred
Subject: Re: [shell-script] Comando grep
Date: Tue, 22 Jan 2002 09:38:25 -0400 (AMT)

Elizabete,
Come?o dizendo que n?o tenho uma resposta completa.
Mas o erro no seu comando se da pelo seguinte problema.

Se voc? tem como sa?da o seguinte texto:"
# comando
deadlock

ocurred
#
//ent?o,
# comando | grep deadlock
//ir? mostrar apenas
deadlock
// portanto o comando
# comand | grep deadlock | grep ocurred
// n?o mostrar? nada, a n?o ser que a sa?da seja:
# comando
deadlock        ocurred
//Ent?o estando na mesma linha, o grep captura a linha inteira por padr?o.
# comando | grep deadlock | grep ocurred
ocurred
//Este seria o retorno
Por tanto acredito que se voc? trocar o comando:
`cat LogsDir/file-$counter.log | grep deadlock | grep occurred`
por
`cat LogsDir/file-$counter.log | xargs|grep deadlock|grep ocurred`
// xargs, n?o sei exatamente a fun??o, mas usando dessa maneira colocar? o 
resultado do comando em uma ?nica linha.
Da mesma forma, n?o resolveria, tenho passado por problemas desse tipo tamb?m, 
gostaria que quem soubesse de uma solu??o que fa?a com que possamos escolher 
duas strings que se identifiquem com a sa?da do comando, mostrando as apenas 
elas, desse-nos uma dica.

----
Fred - Dept. Linux
Planae Inform?tica

On Tue, 22 Jan 2002, Elizabete Azevedo wrote:

> Date: Tue, 22 Jan 2002 03:13:21 -0800 (PST)
> From: Elizabete Azevedo <address@hidden>
> Reply-To: address@hidden
> To: address@hidden
> Subject: [shell-script] Comando grep
> 
> X-AntiV?rus: este e-mail passou pelo antiv?rus AMaViS 0.2.1 
> (http://amavis.org/)
> 
> Bom dia ....
>     
>     
> Tenho um pequeno script, que gera um ficheiro de log,
> por cada acoorrencia ? base de Dados,
> nesse script, tenho um while que procura no ficheiro
> de log, gerado na execu??o anterior, a palavra
> 'deadlock'
> se essa existir dever? correr novamente o processo
> 
> while [ -n "`cat LogsDir/file-$counter.log | grep
> deadlock`" ]
> do
>    counter=`expr $counter + 1`
>    print "**************************** $data - $hora
> *******************************" >>
> LogsDir/file-$counter.log
>    print >> LogsDir/file-$counter.log
> 
>    ###executa processamento *? BD   
> 
> done
>                          
> este script esta a funcionar, para garantir que o
> processo nao fica a meio, porque tenho muitos
> utilizadores aceder,
> concorrencialmente ? BD, mas agora tenho necessidade
> de fazer outro tipo de grep, i. ? :
> 
> Preciso que seja feito o cat ao ficheiro e que procure
> pela palavra 'deadlock' e/ou 'occurred', como posso
> fazer isso 
> no comando while ?                                    
>        
> 
> Tentei :
>          while [ -n "`cat LogsDir/file-$counter.log |
> grep deadlock | grep occurred`" ], mas d? erro,
>        
> ser? que me podem ajudar, pf?
> 
> __________________________________________________
> Do You Yahoo!?
> Send FREE video emails in Yahoo! Mail!
> http://promo.yahoo.com/videomail/
> 
> Sair da lista: address@hidden
> Banco Dados:   http://www.egroups.com/group/shell-script 
> 
> Seu uso do Yahoo! Grupos ? sujeito ?s regras descritas em: 
> http://br.yahoo.com/info/utos.html 
> 



reply via email to

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