| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Oracle > linux + oracle + sqlplus + awk |
| Автор: Efes 8.12.2014, 19:12 | ||||||||||
| Привет всем. Подскажите, как найти причину несрабатывания скрипта. После миграции log_id все время получается пустым. В предыдущей ветке http://forum.vingrad.ru/forum/act-ST/f-122/t-381064/unread-1.html выяснили, что проблема была в awk. Было
поправил на
(работает отлично). Просьба к знатокам awk подсказать, что подправить здесь (если проблема тоже в awk)? Заранее благодарен.
До миграции:
После миграции:
|
| Автор: tzirechnoy 8.12.2014, 20:57 |
| Скорее всего -- нужно просто EOF), а не #EOF) -- и если да, то у вас при миграцыи произошла какая-то херня с табами в скриптах. Но если нет -- то покажыте вывод при включённом xtrace (т.е. добавьте строчку set -x перед этой строкой), и заодно, покажыте вывод SELECT pls_audit.get_id_log from dual; |
| Автор: Efes 8.12.2014, 21:42 | ||||
Добавил set -x, вот результат:
SELECT pls_audit.get_id_log from dual 2225700 (сиквенс работает нормально). Есть идеи? |
| Автор: Efes 8.12.2014, 23:22 | ||
А так работает:
Пожалуйста, помогите исправить изначальный код. |
| Автор: tzirechnoy 9.12.2014, 00:28 |
| Так, а если через эхо добавить set head off\nset feed off\nset pagesize 0 -- то какой результат sqlplus -s /nolog будет? Да, Вы, кстати, попробовали убрать # в строке EOF -- изменилось ли что-нибудь? (то есть код в принцыпе, кроме этого момента с решёткой -- банальный, всего-то записывает в переменную первое поле второй строку вывода sqlplus с таким вводом.) |
| Автор: Efes 9.12.2014, 00:29 | ||
А что вообще значит вот та часть?
|
| Автор: tzirechnoy 9.12.2014, 12:47 |
| Напечатать первое поле и перевод строки. |