The UNIX and Linux Forums  

Go Back   O UNIX e Linux Forum > Top Fóruns > Programação Shell Script e
.
google unix.com



Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui.

Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
Fio Thread Starter Fórum Respostas Última postagem
shell script porquê não? tahir23 Programação Shell Script e 4 08-25-2008 10:46
porquê script falhar algum dia? tahir23 UNIX & avançada para usuários experientes 10 08-21-2008 07:04
porquê shell script falhar tahir23 Programação Shell Script e 4 08-21-2008 11:37
arquivo <filename> falhar kingskar UNIX & avançada para usuários experientes 2 08-14-2006 10:07
Script falhar JStone Programação Shell Script e 8 08-10-2006 01:00

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback Thread Tools Pesquisar este Thread Rate Thread Display Modes
  #1 (permalink)  
Old 01-06-2009
ali560045's Avatar
ali560045 ali560045 is offline
Usuário
  
 

Join Date: Oct 2007
Lugares: 328
arquivo de log quando o script falhar!

Eu tenho um script que irá recuperar alguma informação da base de dados. O script está funcionando bem mas eu tenho que adicionar nova funcionalidade do que quando o script ou não recuperar resultado nulo, devem reflectir no arquivo de log.

abaixo o script AMR_Inactive.sh

Código:
while read i
do

connect1=`sqlplus -silent amit/qwerty@edna.world <<END
set pagesize 0 feedback off verify off heading off echo off
SELECT meter.X_UDC_ASSET_ID
 FROM
    SIEBEL.S_ASSET Meter,
    SIEBEL.S_ASSET SDP,
    SIEBEL.s_asset_rel ARSM,
        SIEBEL.S_ADDR_PER Premise,
        SIEBEL.S_ASSET Route,
        SIEBEL.s_asset_rel ARSR
 WHERE
        ARSM.par_asset_id = SDP.row_id AND
        ARSM.asset_id = Meter.row_id AND
        ARSM.relation_type_cd = 'SDP-METER' AND
        ARSM.x_rel_status = 'Active' AND
     SDP.PER_ADDR_ID = Premise.row_id AND
        ARSR.par_asset_id = Route.row_id AND
        ARSR.asset_id = SDP.row_id AND
        ARSR.relation_type_cd = 'ROUTE-SDP' AND
        ARSR.x_rel_status = 'Active' AND
                Premise.X_CLIENT_PRMSE_ID = '$i';
exit;
END`
echo "Completed for $i" 
echo "$connect1" 
done < TNS_AMRI_INACTIVE.txt

conteúdo do TNS_AMRI_INACTIVE.txt
Citação:
0002034694
Suponho que estes dados para o script retorna nulo i resultado deve receber a informação "Não linhas retornadas" no meu diário file.im Manejo o script usando crontab

AMR_Inactive.sh> AMR_Inactive.log 2> & 1

Última edição por ali560045; em 01/06/2009 02:26..
  #2 (permalink)  
Old 01-06-2009
Panos1962 Panos1962 is offline
Usuário
  
 

Join Data: dezembro 2008
Local: Thessaloniki, Grécia
Lugares: 29
A única coisa que você tem a fazer é verificar o $ () connect1 valor antes da impressão é a seguinte:

Código:
if [ -n "${connect1}" ]; then
    echo "${connect1}"
else
    echo "No rows returned"
fi

em vez de apenas:


Código:
echo "${connect1}"

  #3 (permalink)  
Old 01-06-2009
ali560045's Avatar
ali560045 ali560045 is offline
Usuário
  
 

Join Date: Oct 2007
Lugares: 328
Obrigado. Mas o que se suponha que depois selecione declaração im actualização utilizando esse valor e, se não atualizar a forma de obter que no arquivo de log.

Basicamente o modo de mostrar no arquivo de log que a consulta SQL tem dado muito trabalho com sucesso ou não .......

Última edição por ali560045; em 01/06/2009 03:42..
  #4 (permalink)  
Old 01-06-2009
ali560045's Avatar
ali560045 ali560045 is offline
Usuário
  
 

Join Date: Oct 2007
Lugares: 328
Tenho agora o código modificado em vez de selecionar im agora a fazer atualização. Tenho a utilização spool conceito aqui.

Mas ainda não obtendo nenhum im info como "0 rows Atualizado" no spool arquivo. Como chegar a essa informação em spool arquivo

abaixo o código usando update

Código:
#!/bin/ksh

. $HOME/conf/systemProperties/EnvSetup.properties


sqlplus -silent amit/qwerty@edna.world <<END
set pagesize 0 feedback off verify off heading off

spool Script_Fails.log 

UPDATE SIEBEL.S_ASSET_XM SDPX 
SET SDPX.ATTRIB_03   = 'Inactive', 
SDPX.LAST_UPD_BY = '1-42V', 
SDPX.LAST_UPD    = SYSDATE, 
SDPX.ATTRIB_04   = 'SQQ3' 
 WHERE SDPX.PAR_ROW_ID  IN ('090845086LG')
   AND SDPX.ATTRIB_01   = 'AMR Ready' 
   AND SDPX.ATTRIB_03   = 'Active';

commit;
exit;
END

quando executar esta actualização de dados na minha declaração é mostrar "sem filas Update". Esta mesma informação que eu quero no spool file.How de conseguir isso?

Thanks in advance

Última edição por ali560045; em 01/06/2009 03:59..
Closed Thread

Marcadores

Thread Tools Pesquisar este Thread
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 11:12.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0