Windows-терминал FreeBSD SSH

379
Latchezar Tzvetkoff

Когда я запускаю инструмент на основе ncurses, скажем nano, в сеансе SSH Linux / OSX, а затем закрываю его, сеанс терминала возвращается с историей и всем остальным.

Но если я начну nanoв сеансе FreeBSD SSH, а затем закрою его, окно nano не очистится и история терминала снова не появится. Я вспоминаю тот же опыт давным-давно, когда работал над текстовой консолью Linux, но никогда не заботился об этом.

Итак, мой вопрос: как я могу заставить SSH FreeBSD вести себя как SSH Linux / OSX?

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

PS Вот 2 скриншота того, что я получаю на OSX и FreeBSD: http://imgur.com/a/IjNne

1
Это может быть интересно (пост на tput и альтернативных экранах). http://stackoverflow.com/questions/11023929/using-the-alternate-screen-in-a-bash-script Hennes 8 лет назад 1
@ Хеннес, спасибо. Наконец-то это выяснилось - база данных termcap во FreeBSD довольно старая, и мне пришлось переопределить настройки `xterm-256color`. Я ответил на свой вопрос на случай, если кто-то наткнется на ту же проблему. Latchezar Tzvetkoff 8 лет назад 1

2 ответа на вопрос

2
Latchezar Tzvetkoff

Хорошо, чтобы ответить на мой собственный вопрос ...

После прочтения этого вопроса: OpenSSH, перезапись экрана FreeBSD при закрытии приложения, с которым я решил ознакомиться, termcapи после нескольких ударов головой я наконец-то заставил его работать как положено.

Ниже я предоставляю записи для моего $ HOME / .termcap

# $HOME/.termcap xterm-256color|xterm with 256 colors and clear:\ :Co#256:pa#32767:\ :AB=\E[48;5;%dm:AF=\E[38;5;%dm:\ :tc=xterm-new:tc=xterm-clear: 
0
Dan Villiom P. Christiansen

As an alternative solution, you can fix this for all users by editing the following definition in in /etc/termcap:

xterm-256color|xterm alias 3:\ :Co#256:pa#32767:\ :AB=\E[48;5;%dm:AF=\E[38;5;%dm:tc=xterm-new: 

Replace :tc=xterm-new: with :tc=xterm-clear: so that it says:

xterm-256color|xterm alias 3:\ :Co#256:pa#32767:\ :AB=\E[48;5;%dm:AF=\E[38;5;%dm:tc=xterm-clear: 

Then run:

cap_mkdb -f /usr/share/misc/termcap /etc/termcap 

Похожие вопросы