Возможно, я что-то упускаю, но разве вы не почти там?Разве вы не можете просто объединить ваши два оператора в один файл вместе с некоторыми командами форматирования, например, prc.sql:
set feedback off
set heading off
set verify off
accept spinput prompt "Enter Stored Procedure Name:"
select text from user_source
where type = 'PROCEDURE'
and name = UPPER('&spinput');
exit
Затем выполнить следующее:
sqlplus -s user/pw @prc.sql
Ваша процедуратекст будет выведен на экран.
Я немного изменил ваш запрос, чтобы перевести пользовательский ввод в верхний регистр, так как большая часть времени имен хранимых процедур будет в верхнем регистре в базе данных.Это означает, что пользователь может вводить текст независимо от регистра, и процедура будет найдена.