Как удалить подчеркивание из вывода Sqlplus - PullRequest
0 голосов
/ 30 мая 2018

Существует Bash-скрипт , который я использую для экспорта некоторых данных из базы данных Oracle и вставки их в текстовый файл.

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

Нужно удалить ------ в Выходных данных.

Там есть сценарий Bash, помещенный ниже параметра

sqlplus -s ${DB_CONNECTION} << EOF > temp.$$
set colsep ','
set pagesize 50000
set linesize 256
set trimspool on
set feedback off
set trim on
spool

--Query

spool off

Вывод будет:

SDATE     ,ERROR_CODE                  ,STATUS      ,PROCESS                       ,FAILURE_COUNT
----------,----------------------------------------,--------------------,--------------------------------------------------,----------------------------------------

Ответы [ 3 ]

0 голосов
/ 30 мая 2018

SET UNDERLINE OFF

SQL * Plus: выпуск 12.2.0.1.0 Производство в среду, 30 мая, 08:11:28 2018

Copyright (c) 1982, 2016, Oracle.Все права защищены.

Время последнего успешного входа в систему: ср 30 мая 2018 08:05:09 -04: 00

Соединено с: Oracle Database 12c Enterprise Edition, выпуск 12.2.0.1.0 - 64-битПроизводство

SQL> set underline off
SQL> set pagesize 10
SQL> set linesize 80
SQL> col first_name format a20
SQL> col last_name format a20
SQL> select first_name, last_name from hr.employees fetch first 6 rows only;

FIRST_NAME       LAST_NAME
Ellen            Abel
Sundar           Ande
Mozhe            Atkinson
David            Austin
Hermann          Baer
Shelli           Baida

6 rows selected.

SQL> 

Из Документов

SET UND [ERLINE] {- |с |ON |OFF} Устанавливает символ, используемый для подчеркивания заголовков столбцов в отчетах.Символ подчеркивания не может быть буквенно-цифровым символом или пробелом.ON или OFF включает или выключает подчеркивание.ON изменяет значение c обратно на значение по умолчанию "-".

SET UNDERLINE поддерживается только в iSQL * Plus, когда предварительно отформатированный вывод включен (SET MARKUP HTML PREFORMAT).

0 голосов
/ 30 мая 2018

Мое предыдущее решение было

sed -i '/-/d' temp

Но лучше всего поставить

underline off
0 голосов
/ 30 мая 2018

Если вы хотите подавить полный заголовок, используйте

set heading off

https://docs.oracle.com/database/121/SQPUG/ch_twelve040.htm#SQPUG082

Если вы хотите видеть имена столбцов, но не строку ниже, используйте:

set underline off

https://docs.oracle.com/database/121/SQPUG/ch_twelve040.htm#SQPUG159

...