Pergunta

Estou executando um script manualmente no meu sistema UNIX manualmente, ele é executado com êxito e atualizados registros necessários no banco de dados ORACLE. Como sempre quando eu exwcute o mesmo script com crontab meus processos saídas com o código de erro 127.

Ao analisar ainda mais, eu tenho há algum problema nessas declarações.


LOGFILE = sachin ORALOGIN = abc / abc @ abcd

cmd = 'sqlplus $ {ORALOGIN} > $ {SVC_HOME} / LOGFILES / $ {LOGFILE} .date +%Y-%m-%d';

eval $ cmd

Por favor sugerir uma solução

Foi útil?

Solução

Você tem certeza que ${ORALOGIN} e ${LOGFILE} são variáveis ??ENV válidos quando cron executa o script?

Às vezes scripts que trabalho para os usuários não fazer o trabalho para cron, pois as execuções do cron não tem todas as variáveis ??de ambiente que os usuários têm.

Outras dicas

No ambiente interativo fazer

env | grep ORACLE

Há muito tempo desde que eu usei sqlplus, mas me lembro que exigia algumas variáveis ??de ambiente para a função (ORACLE_HOME?) E eu estou suspeitando seu ambiente de trabalho cron não tem este conjunto.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top