У мене є деякі пристрої, підключені до сервера послідовних термінів Cisco; багато хто працює добре, коли я telnet
прямо в порт на Cisco. Однак у мене є кілька впертих пристроїв, які не використовуватимуть, Backspaceоскільки вони за замовчуванням відображені в telnet.
У випадку, якщо це має значення, я telnet з- rxvt
під Debian видавлюю (у X Window). TERM
встановлений на rxvt
, але це не має значення , чи використовую я vt100
, vt101
або xterm
... зміна TERM
не має ніякого ефекту. Я почав змінюватись TERM
на основі того, що я бачив у старому FAQ Керміта . FWIW, stty erase ^h
і stty erase ^?
не працює.
Я помітив, що Backspaceпрацює на цих пристроях правильно, якщо я використовую необроблений сокет TCP від netcat
... тобто nc 192.168.12.117 2006
; однак тоді я стикаюся з іншими проблемами із паролями, які не є прихованими, або термінальним пейджингом.
Як я можу вибірково змусити Telnet і SSH до карти , Backspaceщоб CtrlHдля цих пристроїв? Крім того, які критерії я повинен використовувати, щоб оцінити, чи це помилка в пристрої?
EDIT
У випадку, якщо це має значення, це висновок з showkey -a
для ключових питань, про які йдеться ... ^?
відповідає Backspaceі ^H
є CtrlH. Здається, мені слід наблизитися, коли я дивлюся на клавіатуру Linux та Howto консолі , але я не можу, здається, розшифрувати, що я можу зробити, щоб змінити це. Я пробував різні частування, loadkeys
без жодного ефекту.
[mpenning@hotcoffee docs]$ sudo showkey -a
Press any keys - Ctrl-D will terminate this program
^? 127 0177 0x7f
^H 8 0010 0x08
Я також включаю відповідний висновок dumpkeys
, а також ... це поточне відображення в моїй системі (яке не працює на деяких пристроях, про які йдеться). Якби я міг зрозуміти, як змусити Backspaceзробити те саме, що і CtrlHя, я мав би рішення.
[mpenning@hotcoffee docs]$ sudo dumpkeys | grep -Ei "backspace|127"
keycode 8 = BackSpace ampersand braceleft
keycode 14 = BackSpace Delete
control keycode 14 = BackSpace
keycode 127 =
[mpenning@hotcoffee docs]$
ssty erase '^?'
? Якщо пристрої наполягають на аC-h
, це не дзвінок telnet, це термінал (емулятор).