powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / sql*plus на UNIX терминалах
20 сообщений из 20, страница 1 из 1
sql*plus на UNIX терминалах
    #32556177
null
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день всем!

Народ, как воспользоваться (и вообще, возможно ли это) клавишами-стрелками (вверх/вниз) в sql*plus для просмотра истории введёных ранее команд? Может быть нужно выставить какой-то "правильный" TERM?

--
Sincerely,
Dennis
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #32556194
Фотография denm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Немного в тему, но может быть полезно:

UNIX: Load SQL*Plus output direct into VI editor
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #32556195
Фотография John.D
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А это зависит от юникса. На ЦДЕ под соляркой окошко с полосой прокрутки, на линуксе нет.
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #32556224
Фотография kkk13il
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуйте при нажатой клавише ctrl подвигать стрелку вверх и вниз
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #32556235
null
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, я говорю не про прокрутку экрана, терминального окна :-) А про хистори команд, когда используются arrow keys. К примеру, в pgsql используется readline (man 3 readline)...

--
Sincerely,
Dennis
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #32557178
Фотография Антон К.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по-моему, тут ответ один и очень простой :-)
"нет"

почитайте про SQL*Plus официальную доку с сайта :-)
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #32863849
null
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем!

Возвращаюсь к старой теме, т.к. есть решение с историей команд под unix-подобные системы. Один из посетителей этого форума дал интересную ссылку на урл, где описано как работать в sqlplus с иторией (я говорю не про r):

http://www.dizwell.com/html/a_command_line_history.html

Вкраце: Есть утилита rlwrap (т.к. я работаю больше под FreeBSD, она есть в портах (/usr/ports/devel/rlwrap), под линкус можно скачать RPM с сайта разработчика, как и сорцы:

URL разработчика:
http://utopia.knoware.nl/~hlub/uck/rlwrap/

Очень полезная штука оказалась! Сейчас поставлю на серверы, использует gnu-шную библиотеку readline. Настраивается просто, после установки сделайте алиас, например так (у меня csh, vi ~/.cshrc):

alias sqlplus rlwrap sqlplus

Если bash, то правьте свой .bash_profile:

alias sqlplus=’rlwrap sqlplus’

также можно:
alias rman=’rlwrap rman’
alias exp=’rlwrap exp’
alias lsnrctl=’rlwrap lsnrctl’

ЗЫ. Все-таки было бы неплохо, если бы разработчики сделали бы историю в самом sqlplus, к примеру, с использованием той же библиотеки readline. Хотя это мысли вслух, тут девелоперов из oracle.com, наверное, нет :)

--
Sincerely,
Dennis
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
sql*plus на UNIX терминалах
    #39146020
Hrundel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
nullПривет всем!

Возвращаюсь к старой теме, т.к. есть решение с историей команд под unix-подобные системы. Один из посетителей этого форума дал интересную ссылку на урл, где описано как работать в sqlplus с иторией (я говорю не про r):

http://www.dizwell.com/html/a_command_line_history.html

Вкраце: Есть утилита rlwrap (т.к. я работаю больше под FreeBSD, она есть в портах (/usr/ports/devel/rlwrap), под линкус можно скачать RPM с сайта разработчика, как и сорцы:

URL разработчика:
http://utopia.knoware.nl/~hlub/uck/rlwrap/

Очень полезная штука оказалась! Сейчас поставлю на серверы, использует gnu-шную библиотеку readline. Настраивается просто, после установки сделайте алиас, например так (у меня csh, vi ~/.cshrc):

alias sqlplus rlwrap sqlplus

Если bash, то правьте свой .bash_profile:

alias sqlplus=’rlwrap sqlplus’

также можно:
alias rman=’rlwrap rman’
alias exp=’rlwrap exp’
alias lsnrctl=’rlwrap lsnrctl’

ЗЫ. Все-таки было бы неплохо, если бы разработчики сделали бы историю в самом sqlplus, к примеру, с использованием той же библиотеки readline. Хотя это мысли вслух, тут девелоперов из oracle.com, наверное, нет :)

--
Sincerely,
Dennis

Давно уже пользую, но вот алиас alias sqlplus=’rlwrap sqlplus’ не рекомендуется, так как поведение rlwrap в скриптах может быть непредсказуемым.
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #39146053
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
null,

rlwrap?
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #39146179
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hrundelповедение rlwrap в скриптах может быть непредсказуемым.
подробнее, плз...
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #39146189
Data Guard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ma1tusHrundelповедение rlwrap в скриптах может быть непредсказуемым.
подробнее, плз...
вместо select поставляется truncate или drop, в зависимости от дня недели


пользуйте rlwrap спокойно в sqlplus & rman, люди шутят, а Вы верите.
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #39146259
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ma1tusHrundelповедение rlwrap в скриптах может быть непредсказуемым.
подробнее, плз...

Так а зачем в скриптах его использовать ?
В скриптах он и не нужен.
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #39146533
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivma1tusпропущено...

подробнее, плз...

Так а зачем в скриптах его использовать ?
В скриптах он и не нужен.
в скриптах, да - излишняя прослойка;
заинтересовало про непредсказуемость, да ладно)
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #39146537
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Data Guard:-)
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #39146879
Hrundel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ma1tus,


Сам я не тестировал но вот что говорят

авторRampant author Laurent Schneider notes why you should never use an alias over-ride of the default Oracle names of "sqlplus", "asmcmd" or "rman":

Using rlwrap may affect the behavior of CTRL+C during interactive sessions. I've done a few tests on this and I can't see a difference in behavior of CTRL+C with or without rlwrap. Perhaps this was a problem with earlier versions. Note that rlwrap only supports interactive sessions, so scripts like the following may not work as expected.

При создании алиала sqlplus='rlwrap sqlplus' имеется шанс что какой нибудь скрипт обратится у переменной окружения и запустит sqlplus через rlwrap.

Опять же, это непотвержденные данные, но я на всякий случай делаю alias

sq и sqp.

sq - история комманд индивидуальна для инстанса
sqp - история комманд общая для всех инстансов на серверe.

Могу кинуть конфигурацию если кому то интересно.
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #39146896
Hernuld
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Замечательная цитата
тщательно скрываемая ссылъI can't see a difference ... so scripts like the following may not work as expected.так что за скрипт-то такой, интерактивный с запросом подстановки?
Hrundelэто непотвержденные данныеи такое же обоснование принятия выводов!
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #39146921
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HrundelПри создании алиала sqlplus='rlwrap sqlplus' имеется шанс что какой нибудь скрипт обратится у переменной окружения и запустит sqlplus через rlwrap.
Опять же, это непотвержденные данные
...
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
oracle@tst12с:~> cat ./sqtest.sh
rlwrap ${ORACLE_HOME}/bin/sqlplus -S / as sysdba <<EOF
select * from dual;
EOF
oracle@tst12с:~> ./sqtest.sh

D
-
X

с алиасом - также...
Hrundelsq - история комманд индивидуальна для инстанса
sqp - история комманд общая для всех инстансов на серверe.интересно решение.
а общая зачем нужна?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
sql*plus на UNIX терминалах
    #39581782
NewBornDBA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добавлю в копилку:

В некоторых источниках в описании алиас в баш_профиле дается в двойных кавычках, но Oracle Linux v.6 и 7 в двойных не работает, нужны одинарные
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #39581859
Maxim Demenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NewBornDBA,

RTFM man bash Quoting

regards

Maxim
...
Рейтинг: 0 / 0
sql*plus на UNIX терминалах
    #39581991
jan2ary
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вроде бы в 12.2 наконец-то осилили историю команд.
Ну и еще есть sqlcl, вполне годный, если к нему привыкнуть.
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / sql*plus на UNIX терминалах
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]