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

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

Re: [shell-script] Re: Ajuda na saída do resulta no script


From: itamarnet
Subject: Re: [shell-script] Re: Ajuda na saída do resulta no script
Date: 05 Aug 2014 12:14:08 -0700

Considere isso, pois o valor da variavel $Dir_interno é estabelecida pelo loop, que pega cada valor da variável $Dir, que por sua vez representa o arquivo que possui as várias linhas.

Assim ele pega uma linha por vez, e se vc igualar a variável $Dir_interno ao arquivo o problema realmente volta a acontecer.

Segue o código completo com minha sugestão 

# dir_oracle.txt
/global/dba_producao/trace/oradwh/diag/rdbms/oradwh/oradwh1/trace/alert_oradwh1.log
/global/dba_producao/trace/orapef/diag/rdbms/orapef/orapef1/trace/alert_orapef1.log

O script esta da seguinte forma:

#!/bin/ksh
Dir=/home/bramos/dir_oracle.txt
Format=`date +%b\ \%d\ \%H:..:..\ \%Y`
Ora=$1
 
while read  Dir_interno;  do
 File=$(cut -d'/' -f11  $Dir_interno)
 find $Dir_interno -mtime +15 | grep -i "$File" | tail -100 |sort -u | grep -iv "$Format"|  grep -i $Ora
 if [ $? -eq 0 ]
  then
        echo "$Ora on file $Dir_interno"
 else
 
        echo "$Ora is not search on dir $Dir_interno"
 
 fi
done < $Dir


[]'s
Itamar

---Em address@hidden, <bezarsnba@...> escreveu:

E ai Itamar,

Valeu ae, pela dica, tentei fazer mas não deu certo.
# Dir_interno=dir_oracle.txt
# File2=$(cut -d'/' -f3  $Dir_interno)
# echo "$Ora on file $File2 "
 on file alert.log
bla.log

Eu acho que da para fazer isso contando no loop, por exemplo no próximo loop utilizar a segunda linha.

Enquanto isso vou ver aqui.

Mas valeu mesmo




Em 5 de agosto de 2014 14:05, itamarnet@... [shell-script] <shell-script@...> escreveu:
 

Algumas considerações


1 . Que tal mudar o nome da variável $Dir dentro do loop para diferenciar do $Dir usada no começo?

2. E determinar o conteúdo da variável $File dentro do loop

Então ao invés de:
  while read  Dir;  do

faça:
 while read  Dir_interno;  do
 File=$(cut -d'/' -f11  $Dir_interno)
 
Acho que isso resolveria o problema.




--



Bezaleel Ramos da Silva
Tel. (21)  97996-1531
LPIC-1 Junior Level Linux Certification
LPIC-2 Advanced Level Linux Certification
ZABBIX Certified Specialist
ZABBIX for Large Environments



reply via email to

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