PuTTY 텔넷을 통해 AIX ksh에서 키 삭제

PuTTY 텔넷을 통해 AIX ksh에서 키 삭제

제가 일하는 곳에서는 ksh를 사용하여 AIX에서 개발하고 있으며 telnet대부분의 사람들은 ArcTel을 사용하지만 저는 PuTTY를 선호합니다. PuTTY의 유일한 문제는 키 입력이 Del작동하지 않고 [3~인쇄만 된다는 것입니다. 흥미롭게도 ArcTel에서는정상 작동.

ArcTel 설정을 살펴보았더니 "백스페이스 및 삭제"라는 스위치가 하나만 있다는 것을 알았습니다. "일반" 또는 "VNS 스타일"일 수 있습니다. 정상적으로 열었습니다(Del은 예상대로 작동합니다). PuTTY에서 키보드 설정을 조정해 보았으나 Del원하는 대로 조합을 찾을 수 없었습니다.

PuTTY에서 이 기능을 구현할 수 있는 방법이 있나요? [3~내 역할을 다시 매핑할까요 .profile? 하지만 KSH에서 Vi 모드를 전환하고 싶지 않습니다.

답변1

퍼티를 사용하여 문제 없이 AIX에 연결합니다. 내 .profile에는

stty erase ^?

내 퍼티 설정에 컨트롤에서 터미널 키보드 "백스페이스"가 선택되어 있습니까? (127)

답변2

AIX의 ksh가 사용자 정의 키 바인딩을 지원하는지 잘 모르겠습니다. AIX 매뉴얼에서 문서화되어 있는 것을 찾을 수 없지만 제 생각에는표준 ksh 기능. \e[3~( \e이스케이프 문자는 어디에 있습니까) 에 대한 바인딩을 설정해 보십시오 . 유효한 경우 다른 키 조합에 대한 바인딩도 설정할 수 있습니다.

KEYBD_handler () {
  case ${.sh.edchar} in
    $'\e[3~') .sh.edchar=$'\004';;
  esac
}
trap KEYBD_handler KEYBD

( $'\004', 즉 은 Ctrl+D표준입니다.묶음다음 문자를 삭제합니다. )

이 문제는 터미널 정의를 변경하여 해결할 수 있습니다.용어 정보. AIX에서 이 작업을 수행하는 방법을 모르겠습니다.

관련 메모에서 PuTTY를 다음과 같이 구성해야 할 수도 있습니다.올바른 문자를 보내세요Backspace, 또는 AIX 시스템에서 필요에 따라 실행하거나 stty erase '^?'terminfo 정의를 일치하도록 변경하십시오.stty erase '^h'

관련 정보