The UNIX and Linux Forums  
Hei og Velkommen fra USA til UNIX og Linux Forums! Takk for besøket og Delta i vårt globale samfunn.

Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
google unix.com



Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her.

Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
Innstilling cronjobs ... krworks Shell programmering og Skripting 4 06-06-2008 02:46
kontroll over shell script JLJ Shell programmering og Skripting 3 01-22-2007 02:16
Bruk vanlige uttrykk i C shell kontroll struktur ballazrus Shell programmering og Skripting 3 02-20-2006 12:59
Cronjobs mcastill66 AIX 1 05-31-2005 02:15
cronjobs Tamer UNIX for Dummies Spørsmål og svar 3 01-22-2001 02:48

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 Søk i denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 03-18-2008
hanu_oracle hanu_oracle is offline
Registrert bruker
  
 

Bli Date: Mar 2008
Sted: Mumbai, INDIA
Innlegg: 41
Slik styrer Cronjobs bruker Shell Script?

Hei Alle,

Nå er jeg kjører 3 oracle prosedyrer enkeltvis manuelt.

Spørring: Hvis 1ste Prosedyre OUT_PUT er suksess, deretter ringer 2dre prosedyre.
Hvis 2dre Prosedyre OUT_PUT er suksess, deretter ringer 3dje prosedyre.

Hvis 1ste prosedyren mislyktes, så ikke noe behov for å kalle den andre
prosedyrer.

Slik planlegger 1., 2., 3. Prosedyrer jobber @
###############################################
PROGRAM JOBB
###############################################
# 30 01 * * * / u14/ods/scripts/in_pps_state_change.sh>> / u14/ods/scripts/scriptslog/in_other_mail.log 2> & 1

# 00 03 * * * / u14/ods/scripts/in_pps_cos_change.sh>> / u14/ods/scripts/scriptslog/in_other_mail.log 2> & 1

# 30 04 * * * / u14/ods/scripts/in_pps_usage_change.sh>> / u14/ods/scripts/scriptslog/in_other_mail.log 2> & 1


################################################
RINGE ORACLE PROSEDYRE fra Shell SKRIPT
################################################
Eg av SP ringer:: in_pps_usage_change.sh

RETVAL \u003d `sqlplus-s ODS / ODS @ ODSDB <<EOF
SET SERVEROUTPUT ON SIZE 100.000
Erklærer
OUT_STATUS NUMMER;
OUT_MSG VARCHAR2 (200);
Begynne
ODS_SP_REMOVE_PRE_SUB_DUP (OUT_STATUS, OUT_MSG);
dbms_output.put_line ( 'KeepThis' | | OUT_STATUS | |' '| | nvl (OUT_MSG ,''));
End;
/
SET SERVEROUTPUT OFF
Exit;
EOF `

X \u003d `echo $ RETVAL | grep KeepThis | awk '(print $ 2)'`
Y \u003d `echo $ RETVAL | grep KeepThis | awk '(print $ 3)'`

echo "">> $ USER_LOG
echo "Fremgangsmåte: ODS_SP_REMOVE_PRE_SUB_DUP utgang er:">> $ USER_LOG
echo "OUT_STATUS \u003d $ X">> $ USER_LOG
echo "OUT_MSG \u003d $ Y">> $ USER_LOG

################################################


Gi meg den løsningen min søket ..

Takk & hilsen
Hanuma
  #2 (permalink)  
Old 03-18-2008
æra
Gjestene
  
 

Innlegg: n / a
Bits: 0 [Bank]
Hvorfor ikke holde dem alle i et enkelt script, og starte den på 01:30? Da er det mye lettere å se om den første subjob mislyktes.

Code:
if in_pps_state_change.sh; then
  in_pps_cos_change.sh
  in_pps_usage_change.sh
fi
Du kan til og med kjøre dem med "på" hvis du kjører dem på et bestemt tidspunkt er viktig. Men da må du være sikker på at in_pps_state_change.sh ferdig før neste jobb er grunn.

Code:
if in_pps_state_change.sh; then
  # Todo: maybe die a horrible death if the time is already past 03:00
  echo /u14/ods/scripts/in_pps_cos_change.sh | at 03:00
  echo /u14/ods/scripts/iin_pps_usage_change.sh | at 04:30
fi

Sist endret av æra; 03-18-2008 på 07:40.. Grunn: Legg til "på" eksempel
  #3 (permalink)  
Old 03-18-2008
hanu_oracle hanu_oracle is offline
Registrert bruker
  
 

Bli Date: Mar 2008
Sted: Mumbai, INDIA
Innlegg: 41
Sitat:
Originally Posted by æra View Post
Hvorfor ikke holde dem alle i et enkelt script, og starte den på 01:30? Da er det mye lettere å se om den første subjob mislyktes.

Code:
if in_pps_state_change.sh; then
  in_pps_cos_change.sh
  in_pps_usage_change.sh
fi
Du kan til og med kjøre dem med "på" hvis du kjører dem på et bestemt tidspunkt er viktig. Men da må du være sikker på at in_pps_state_change.sh ferdig før neste jobb er grunn.

Code:
if in_pps_state_change.sh; then
  # Todo: maybe die a horrible death if the time is already past 03:00
  echo /u14/ods/scripts/in_pps_cos_change.sh | at 03:00
  echo /u14/ods/scripts/iin_pps_usage_change.sh | at 04:30
fi
Takk ....
  #4 (permalink)  
Old 03-18-2008
hanu_oracle hanu_oracle is offline
Registrert bruker
  
 

Bli Date: Mar 2008
Sted: Mumbai, INDIA
Innlegg: 41
Sitat:
Originally Posted by hanu_oracle View Post
Takk ....
Jeg har en mer dought?

Hvis den 1. prosedyren er utført, men prosessen er ikke gjort på grunn av Ora-03113: Slutten av Comminication kanal Error.

I dette tilfellet IF LOOP kan kjøre 2dre og 3dje Procedures vellykket ?????

Enhver løsning er der, til å styre den 2., den 3. prosedyrer??
  #5 (permalink)  
Old 03-18-2008
æra
Gjestene
  
 

Innlegg: n / a
Bits: 0 [Bank]
Du bør også ta vare å angi avsluttingskoden ordentlig fra manus, slik at shell script som samler disse kan undersøke det.

Jeg antar noe om OUT_STATUS er "Suksess" exit 0, ellers noe høyere tall (0 betyr suksess).

Du har kontroll over den første shell script (og hvis ikke, oppretter du en wrapper script som du har kontroll over), så bare gjør det tilbake suksess (null) under forholdene når andre og tredje scripts kan kjøre, og ikke null hvis ikke.

Sist endret av æra; 03-18-2008 på 08:28.. Årsak: Svar til siste spørsmålet, for
  #6 (permalink)  
Old 03-18-2008
hanu_oracle hanu_oracle is offline
Registrert bruker
  
 

Bli Date: Mar 2008
Sted: Mumbai, INDIA
Innlegg: 41
Sitat:
Originally Posted by æra View Post
Du bør også ta vare å angi avsluttingskoden ordentlig fra manus, slik at shell script som samler disse kan undersøke det.

Jeg antar noe om OUT_STATUS er "Suksess" exit 0, ellers noe høyere tall (0 betyr suksess).

Du har kontroll over den første shell script (og hvis ikke, oppretter du en wrapper script som du har kontroll over), så bare gjør det tilbake suksess (null) under forholdene når andre og tredje scripts kan kjøre, og ikke null hvis ikke.
OK,

Takke deg ....
  #7 (permalink)  
Old 03-18-2008
ShawnMilo ShawnMilo is offline
Registrert bruker
  
 

Bli Dato: juni 2006
Innlegg: 252
Hvordan om & & operatør?
Code:
procedure1 && procedure2 && procedure3
Dette gjør akkurat det du ønsker. Hvis en av dem svikter (avkastning enn null exit status), vil ingen av disse som vil bli forsøkt.

ShawnMilo
Closed Thread

Hugseliste

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er
Smilefjes er
[IMG] koden
HTML-koden Av
Pingbacks er
Refbacks er




Alle klokkeslett er GMT -4. Nå er klokken 09:17.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0