|
From: | Bezaleel Ramos |
Subject: | Re: [shell-script] Ajuda na saída do resulta no script |
Date: | Tue, 5 Aug 2014 17:13:49 -0300 |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256> Quando altero no echo para "*echo "$Ora on file $File"* tenho o seguinte resultado:
On 08/05/2014 01:44 PM, Bezaleel Ramos address@hidden [shell-script] wrote:
>
>
> Galera,
>
> Estou precisando de uma ajuda com relação a um script que estou criando, quem poder me ajudar
>
> Só para esclarecer, criei um arquivo com a seguintes informações:
>
> # 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 File=$(cut -d'/' -f11 $Dir) Format=`date +%b\ \%d\ \%H:..:..\ \%Y` Ora=$1
>
> while read Dir; do find $Dir -mtime +15 | grep -i "$File" | tail -100 |sort -u | grep -iv "$Format"| grep -i $Ora if [ $?
> -eq 0 ] then echo "$Ora on file $Dir" else
>
> echo "$Ora is not search on dir $Dir"
>
> fi done < $Dir
>
> O meu problema esta no echo(eu acho), pois queria informar somente o arquivo e não o diretório, por exemplo:
>
> ORA-06512 is not search on file alert_oradwh1.log ORA-06512 is not search on file alert_orapef1.log
>
>E ae Beza? Tanto tempo comigo e não aprendeu nada? Isso denota um mau mestre :)
>
> ORA-06512 is not search on file alert_oradwh1.log alert_orapef1.log ORA-06512 is not search on file alert_orapef1.log
> alert_oradwh1.log
O problema está no fato de que há mais de uma ocorrência no arquivo, criando assim uma lista. Se você faz File=$(cut -d'/' -f11
$Dir), na verdade você está cortando todos os elementos da lista dir_oracle.txt e jogando para a lista $File. Então, $File vale:
alert_oradwh1.log
alert_orapef1.log
O que você precisa fazer é iterar $Dir e aplicar o cut para cada elemento dele, assim:
for Dir_interno in $(cat $Dir); do
File=$(echo $Dir_interno | cut -d'/' -f11)
...
done
Para efeito de otimização, faça assim:
File=${Dir_interno##*/}
Abraço
- --
echo
920680245503158263821824753325972325831728150312428342077412537729420364909318736253880971145983128276953696631956862757408858710644955909208239222408534030331747172248238293509539472164571738870818862971439246497991147436431430964603600458631758354381402352368220521740203494788796697543569807851284795072334480481413675418412856581412376640379241258356436205061541557366641602992820546646995466P
| dc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQEcBAEBCAAGBQJT4TWHAAoJEG7IGPwrPKWrQpkH/1bpTyD0DyQvcXDxkRfu7bN8
tw7bflOyPBTjLZDePXKzzDPJT94RqSGRiu00xqFOTLX9nCF8gH0AZQU4sVQBRQJO
sY8pQwYG7pCOGA3qCpIEppkIrFOaCPa/eHHhQftZ18jlNCRK0zIeHuVyUVUcuMUZ
aDE5ijzQ7TEw2v/7ato7fINUVoLqRBONzZsT80Uu/+Hf8AvjusAYJ5OnllZapIlC
UGrE++i/bDRWIRQAgJNbcWddCasZn6xxWlqHmz0odIffxMQplPGTQDEdPqLCAy2z
lhoPiAe1Dl7XvcudpmqGGAcaDcLcCVGnO3IO+cMLX7RUi/GQridGH3Tb62MXk+Q=
=YAw3
-----END PGP SIGNATURE-----
--Bezaleel Ramos da SilvaTel. (21) 97996-1531ZABBIX Certified Specialist
ZABBIX for Large Environments
[Prev in Thread] | Current Thread | [Next in Thread] |