Portál AbcLinuxu, 12. května 2025 11:00

Dotaz: bash script, cron - pusteni externiho scriptu

30.7.2007 10:34 blck
bash script, cron - pusteni externiho scriptu
Přečteno: 728×
Odpovědět | Admin
Zdravim,

potrebuji spoustet externi scripty z hlavniho scriptu ktery je nastaven v cronu na automaticke spusteni.

hlavni script vypada takto:

#!/bin/sh

BACKUP_HOME=/var/backup/database/oracle ALLBCKDB_HOME=/var/backup/database EXPORT_HOME=/opt/oracle/product/9ir2/bin

rm $ALLBCKDB_HOME/ora_*

for EXP in `ls "$EXPORT_HOME"/export_*` do . "$EXP" done

sleep 1s tar czf $ALLBCKDB_HOME/ora_`date +%d%m`.tar.gz $BACKUP_HOME

exit

Pokud script pustim rucne tak vse probehne v poradku, poporade se pusti x scriptu ktery vykonaji zalohu. Pokud script pusti cron tak probehne vymazani rm $ALLBCKDB_HOME/ora_* a zabaleni $BACKUP_HOME

Muzete me nakopnout spravnym smerem? Potrebuju aby i cron nejdrive pockal az dobehnou spustene scripty a az pote pustil baleni

Diky Jakub
Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

30.7.2007 11:19 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: bash script, cron - pusteni externiho scriptu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Začal bych tím, že bych se naučil používat tag <pre>. Pak bych se pokusil vytlouci si z hlavy používání for var in `cokoli` a na for var in `ls blabla*` bych použil obzvláště drastickou metodu vymýtání. No a pes zakopán v tomhle kusu kódu patrně není. Nejspíše v těch scriptech export_* předpokládáš nastavení nějakých proměnných prostředí, které cron nastavené nemá.
#!/bin/sh
BACKUP_HOME=/var/backup/database/oracle
ALLBCKDB_HOME=/var/backup/database
EXPORT_HOME=/opt/oracle/product/9ir2/bin

rm "$ALLBCKDB_HOME"/ora_*

for EXP in "$EXPORT_HOME"/export_*
do
    . "$EXP"
done

sleep 1s
tar czf "$ALLBCKDB_HOME"/ora_`date +%d%m`.tar.gz "$BACKUP_HOME"
exit
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
jose17 avatar 30.7.2007 11:23 jose17 | skóre: 44 | blog: Joseho_blog | Bratislava
Rozbalit Rozbalit vše Re: bash script, cron - pusteni externiho scriptu
Odpovědět | | Sbalit | Link | Blokovat | Admin
skusil by som za #!/bin/sh pridat riadok set -x a v crone presmerovat stdin a stderr to nejakeho suboru. snad tam nieco objavite. pre pastovanie skriptu pouzite nabuduce <pre> alebo pastebin.com. jose
Ja vim, on vi, ty nano!

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.