A partir do texto da sua pergunta, estou assumindo que você está usando o cygwin para acessar uma máquina Solaris.
stty -a
exibe todas as configurações atuais do terminal. Eu não vou passar por cada um. Mas você pode ler o que cada um faz nas páginas do manual .
Mas, em particular, seu problema é erase = ^?;
. ^?
é o Caractere de Controle ASCII para DEL
(delete). O que você quer é o caractere de controle para BS
(backspace).
Na linha de comando, você pode digitar o seguinte:
stty erase ^H
Mas note que o ^H
é um caractere de controle e não ^ H . Então eu acredito que o jeito que você digitaria é o seguinte:
Ctrl + v retrocesso
E isso deve resultar na impressão de ^H
na tela.
Isso deve mudar o comportamento de backspace para o que você deseja. Mas duraria apenas a sessão atual.
De acordo com este blog da Oracle , você pode alterar permanentemente a configuração abrindo /kernel/drv/options.conf
e procurando pelo linha seguinte:
ttymodes="2502:1805:bd:8a3b:3:1c:7f:15:4:0:0:0:11:13:1a:19:12:f:17:16";
Altere o 7f
para 8
para remapear permanentemente o backspace de DEL
para BS
. Isso exigirá uma reinicialização para entrar em vigor.