우리 서버 중 하나에 로그인 할 때 ssh
슬래시 문자를 입력할 수 없어 아무것도 할 수 없게 됩니다(예: ls /
). 슬래시를 어떻게 작동하게 할 수 있나요?
추가 정보:
/etc/issue
"CentOS 버전 5.7(최종)"을 실행 중이라고 주장합니다.- 내가 이것을 아는 유일한 방법은 달리는 것입니다
ssh me@some-host cat /etc/issue
- 저는 Mac OS X Terminal.app을 사용하고 있으며 Centos 5나 다른 시스템에서는 이 문제가 발생한 적이 없습니다.
- 나는 이 기계를 누가 만들거나 설치했는지 전혀 모릅니다.
echo $TERM
보고서xterm-256color
이것이 누구에게나 이해가 될지는 모르겠지만 (나에게는 이해가 되지 않습니다), 작동하는 서버
diff
로 실패한 서버를 수정/etc/inputrc
하고 다음을 얻었습니다.$ diff /tmp/{good,bad}_inputrc 1c1 < # do not bell on tab-completion --- > /# do not bell on tab-completion 37a38,49 > > # Home Key > "\e[7~":beginning-of-line > > # End Key > "\e[8~":end-of-line > > # Delete Key > "\e[3~":delete-char > > # Insert Key > "\e[2~":paste-from-clipboard
답변1
이 줄이 문제야
/# do not bell on tab-completion
해당 줄을 작업 구성에 추가하면 슬래시 작동이 중지됩니다.
내가 찾을 수 있는 유일한 단서는 readline 매뉴얼 페이지에 있습니다:
빈 줄은 무시됩니다. #으로 시작하는 줄은 주석입니다. $로 시작하는 줄은 조건부 구조를 나타냅니다. 다른 줄은 키 바인딩과 변수 설정을 나타냅니다.
빈 줄이 아니고 #
or 로 시작 하지 않기 때문에 $
키바인딩으로 처리해야 합니다.
답변2
xmodmap이라는 프로그램을 사용하여 키맵을 수정할 수 있습니다. man xmodmap
설치되었는지 확인해보세요 .
즉, xev
X 이벤트에 대한 자세한 정보를 보는 데 사용됩니다. 그것을 실행하고 / 키를 누르십시오. 내 설정에서 얻은 결과는 다음과 같습니다.
KeyRelease event, serial 34, synthetic NO, window 0x4e00001,
root 0x15a, subw 0x0, time 107752919, (784,828), root:(789,850),
state 0x10, keycode 61 (keysym 0x2f, slash), same_screen YES,
XLookupString gives 1 bytes: (2f) "/"
XFilterEvent returns: False
그런 다음 원격 컴퓨터에서 xmodmap -e 'keycode [KEYCODE] = [KEYSYM]
[KEYCODE] 및 [KEYSYM]이 xev에서 검색된 값인 매핑 생성을 사용합니다. 먼저 기본 61,0x2f를 설정하여 재설정이 필요한지 확인하십시오. (즉, xmodmap -e 'keycode 61 = 0x2f'
)
그래도 작동하지 않으면 다른 키를 매핑해 보세요. 예를 들어 키코드 105(오른쪽 컨트롤)를 0x2f로 변경해 보았습니다. 이것은 로컬과 SSH 세션 모두에서 작동합니다.
편집하다:
물음표를 설정할 수도 있습니다. 이전 명령을 확장하면 xmodmap -e 'keycode 61 = 0x2f 0x3f
'.여기에 주요 기호 목록이 있습니다..