Приведенный ниже код работает правильно в unix server1, но показывает ошибку в diff unix server2. (Оба сервера имеют одинаковую конфигурацию) .Если я снова добавлю 2 команды экспорта после 'su - oracle'
, его работа в unix server2. Мне нужно написать общий код c, чтобы работать как с сервером. Любую конфигурацию нужно изменить в unix server2?
ОШИБКА В unix server2: -ksh [6]: WHENEVER: not found [Нет такого файла или каталога]
#!/bin/ksh
TMP_ORA_HOME=`grep 'ORACLE_HOME=' /home/oracle/.bash_profile |awk -F'=' '{print $2}'`
export ORACLE_HOME=$TMP_ORA_HOME
export ORACLE_SID=ABCD
OUTPUT=`su - oracle <<EOF
ORAENV_ASK=NO
. $ORACLE_HOME/bin/oraenv
sqlplus -s '/as sysdba'
WHENEVER SQLERROR EXIT FAILURE
SELECT 1 from dual;
EOF`
echo $OUTPUT
exit 0