2016-03-25 1 views
0

Это немного странно. Если я запустил psql, но затем нажмите Ctrl + C Когда он запрашивает пароль, программа, похоже, выходит, но я больше не могу видеть, что я печатаю, даже если вернусь в свою оболочку. Это похоже на то, что все, что я печатаю, скрывается, потому что все еще думает, что я набираю свой пароль.psql разрушает мою оболочку, если я нажимаю Ctrl + C

Единственное решение для этого, что я нашел, - это запустить новую оболочку, и это прекрасно, но не очень. Мне бы хотелось понять, что здесь происходит и как это исправить.

+3

Попробуйте выполнить команду «reset» для сброса терминала – janos

+1

'psql' отключил режим эха терминала и [' reset'] (http://invisible-island.net/ncurses/man/tset.1.html # h3-reset --- reinitialization) снова включил его. –

+0

Это ошибка в 'psql' хотя? Я не знаю никакой другой программы, где это происходит. – mlissner

ответ

3

reset часто работает, но не является панацеей. В этом случае отключено только эхо-сигнал терминала. Другие программы могут модифицировать обработку возврата каретки, что делает неудобным тип «перезагрузки» (вы можете это сделать, но вам нужно будет ввести управлениеJ, чтобы закончить линию).

В других случаях, поскольку reset опирается на описание на терминала, он не может сбросить все . Частными причинами являются (а) чередующиеся наборы символов и (б) изменения цветовой палитры терминала.

  • Хотя ncurses имеет множество терминальных описаний, которые сделать сбросить дополнительный набор символов, это общая проблема в системах Unix для не сделать это.
  • В течение последних нескольких лет люди использовали последовательности xterm 256color для установки цветовой палитры, но reset не имеет возможности вернуть их в палитру по умолчанию.

Помимо части описания терминала, reset выполняет функцию, аналогичную функции stty sane.

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

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