У мене є деякі пристрої, підключені до сервера послідовних термінів 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, це термінал (емулятор).