2010-01-20 4 views
9

Я наматывается файл перед запуском следующей команды и получил выход, как это,Очистить заголовок в Oracle намотать

Я поставил отправиться, обратную связь от

SET ЗАГОЛОВОК OFF SET ОБРАТНАЯ СВЯЗЬ OFF SPOOL D: \ TEST.TXT SELECT SYSDATE FROM DUAL; SPOOL OFF

OUTPUT в test.txt:

SQL> SELECT SYSDATE FROM DUAL;

20-JAN-09

SQL> SPOOL OFF

Как я могу удалить два SQL> строки. Я хочу только выход.

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

ответ

14

Команда вам нужно:

SET ECHO OFF 

Однако, это работает только для кода запуска из скриптов, а не команды, введенной в интерактивном режиме. Вы бы создать файл сценария, как это (например, называется Test.sql):

SET HEADING OFF FEEDBACK OFF ECHO OFF PAGESIZE 0 
SPOOL D:\TEST.TXT 
SELECT SYSDATE FROM DUAL; 
SPOOL OFF 

Затем в SQL Plus работать так:

SQL> @test 

Я добавил PAGESIZE 0 в команде SET для удалите пустую строку, которую вы в противном случае получаете до даты в выходном файле.

+0

Спасибо, Тони, твоя идея работает. И benjamin спасибо за ваши скрипты. Cheers, Seenu. –

+0

Не стесняйтесь поднимать любые ответы, которые вам понравились, и принять тот, который наилучшим образом разрешил вашу проблему! –

4

использовать это:

#!/bin/ksh 
CONNECT_STRING=dbapp/[email protected] 
SQLPLUS_SETTINGS="SET PAGESIZE 1000 LINESIZE 500 ECHO OFF TRIMS ON TAB OFF FEEDBACK OFF HEADING OFF" 
SQL_RESULT=`sqlplus -s ${CONNECT_STRING} << EOF 
${SQLPLUS_SETTINGS} 
select sysdate from dual; 
exit; 
EOF` 

echo $SQL_RESULT >output_file 
+0

Нет, он показывает то же самое. Введите SQL> SELECT SYSDATE FROM DUAL; 20-JAN-10 SQL> SPOOL OFF –

+0

проверить сейчас с измененным ответом – Vijay

+1

+ Это решение не обертывает и не усекает линии. Это то, что я искал. –

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

  • Нет связанных вопросов^_^