Команда sqlplus возвращает страницу справки при запуске из crontab в Linux - PullRequest
0 голосов
/ 25 июня 2019

Команда sqlplus при выполнении из crontab при вызове сценария оболочки отображает страницу справки в виде вывода

не получил никакой помощи, чтобы решить эту проблему


$ORACLE_HOME/bin/sqlplus -s $DB_CURRENT_SCHEMA/$DB_PASSWD@$ORACLE_SID << EOF > /ipomapp/TAPESTRY/queue_count/queue_count.out
select count(*),Q_name from tap_infce.interface_xml_queue having count(*) > 500 group by Q_name;
EOF

должен отображать количество очередей, но печатает страницу справки sqlplus

1 Ответ

0 голосов
/ 25 июня 2019

Вместо использования здесь-документа вы можете попытаться сохранить свой sql в переменную, а затем передать эту переменную в sqlplus. Я не знаком с вашим запросом, поэтому, если он ошибочен, его также необходимо исправить.

#!/bin/bash

sql="> /ipomapp/TAPESTRY/queue_count/queue_count.out select count(),Q_name from tap_infce.interface_xml_queue having count() > 500 group by Q_name;"

echo "$sql" | $ORACLE_HOME/bin/sqlplus -s $DB_CURRENT_SCHEMA/$DB_PASSWD@$ORACLE_SID
...