我有一個shell腳本,它具有以下語句。它獨立執行時可以正常工作。獨立Shell腳本正常工作,但不能與crontab一起工作
$ORACLEHOME/bin/sqlplus -s [email protected]$LINKNAME/$BDBPASSWORD <<EOF
DECLARE
COUNT1 NUMBER:=0;
BEGIN
EXECUTE IMMEDIATE 'DROP TABLE TABLE1';
EXECUTE IMMEDIATE 'CREATE TABLE TABLE1 AS SELECT * FROM [email protected]';
END;
/
EOF
但是,當我從crontab調用這個f,它失敗。我的crontab看起來像
*/1 * * * * /bin/sh /home/mig/Test.sh > /home/mig/Test.txt
我在日誌中收到以下錯誤。
Error 6 initializing SQL*Plus
SP2-0667: Message file sp1<lang>.msb not found
SP2-0750: You may need to set ORACLE_HOME to your Oracle software directory
任何幫助表示讚賞。
的可能的複製[環境變量時,Python腳本由cron運行(https://stackoverflow.com/questions/42114982/environment-variables-when-python-script-run-by-cron) – l0b0
你腳本包含對'ORACLEHOME'的引用,而錯誤消息提到'ORACLE_HOME'。那是故意的嗎?另外,你如何設置腳本中使用的所有變量? – l0b0
我有另一個文件,我已經初始化變量並從我的主腳本調用該腳本。 – GSG