2015-09-27 2 views
0

Я пишу сценарий оболочки, который будет выполнять проверку ошибок в файле с именами пользователей в нем.Как передать переменную команде sqlplus в сценарии оболочки

Файл имя пользователя содержит следующую информацию и назван песни1:

user1/[email protected] 
user2/[email protected] 
user3/[email protected] 
user4/[email protected] 
ect... 

Ошибка проверки файла содержит следующую информацию и назван error_check.sql:

select TAG_DATA from SITE_DATA where TAG_NAME='BULK_EMAIL_USE_CCCS' 
select * from TASK_RECUR where RECUR_ID='111' 
select * from TASK_RECUR where RECUR_ID='112' 
select * from TASK_RECUR where RECUR_ID='113' 
exit 

Мне нужно передать обе переменные в сценарий оболочки следующим образом:

while read line; do sqlplus -S $list1 < $line <error_check.sql>> $LOGFILE; done 

Я пробовал много d ifferent способы сделать это, но я просто не вижу большую картину здесь ... Может кто-то, пожалуйста, помогите мне исправить мою проблему?

Заранее спасибо

Кроме того, пожалуйста, простите отсутствие надлежащего форматирования в этом ... Это был мой первый раз.

Еще раз спасибо

+0

Я не понимаю, что вы хотите сделать. Можете ли вы написать пример, который точно показывает, что вы хотите? Какова командная строка, которая запускает sqlplus? Если бы вы делали все это вручную, что бы вы набрали? –

ответ

0

Файл sql должен быть надлежащим образом отформатирован, например. каждый оператор select должен заканчивать точкой с запятой;

Вы называете файл как

@ yourfile.sql голубой

и использовать значение внутри сценария, как

выберите идентификатор из цветов, где COLOR_NAME =»& 1' ;

Смежные вопросы