![]() |
Hei og Velkommen fra USA til UNIX og Linux Forums! Takk for besøket og Delta i vårt globale samfunn.
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Rules | Lenker | Album | FAQ | Medlemsliste | Kalender | Søke | Dagens innlegg | Marker forumene som lest |
| 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 |
![]() |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
|
|
||||
|
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 |
|
||||
|
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 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 |
|
||||
|
Sitat:
|
|
||||
|
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?? |
|
||||
|
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 |
|
||||
|
Sitat:
Takke deg .... |
![]() |
| Hugseliste |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|