바인드를 사용하여 쉘 깨기

바인드를 사용하여 쉘 깨기

(Ubuntu 18.04를 사용한 WSL)

이전에 사용한 일부 구성 설정이 있으며 인터넷 어디에서나 권장 구성 설정을 볼 수 있습니다(그렇다는 것은 말할 것도 없습니다). 나는 그것들을 .inputrc내 집 위치에 있는 파일 에 넣었습니다 .

$include /etc/inputrc

# better tab completion
bind "set show-all-if-ambiguous on"
bind "set completion-ignore-case on"

# disable bell
bind "set bell-style none"

# make tab completion treat links as directories
# i.e. adds trailing slash when <tab>-ing
set mark-symlinked-directories on

bind왜 이것이 사용되거나 사용되지 않는지 는 분명하지 않습니다 . 온라인에는 도서관 bind용 이라고 나와 있습니다 readline. 온라인상에서도 .inputrc표적이 되고 있다고 합니다 readline. 그러니 함께 일해야겠죠?

하지만 사용하면 구매 터미널(WSL)에서 이러한 이상한 일이 발생하기 시작합니다.

한 경우(벨소리 비활성화)에서는 프롬프트에 N개 이상의 문자를 입력할 때마다 bash가 set계속해서 해당 문자를 뱉어내기 시작했습니다.

껍질이 계속해서 인쇄됩니다.

다른 경우(탭 완성)에는 입력한 모든 문자 뒤에 "완료 무시 케이스 설정"이 인쇄됩니다.

쉘은 문자 뒤에 구성 설정을 인쇄합니다.

을 제거하고 따옴표를 붙이면 이상한 동작이 중지되므로 bind알 필요가 없습니다.어떻게이 행동을 멈추기 위해. 나는 알고 싶다가끔은 이런 경우도 있습니다. 무슨 일인지 아는 사람 있나요?

답변1

@Kusalanada의 의견 덕분에 저는 bind다음과 같은 사실을 깨달았습니다.세게 때리다내장 readline.configure와 마찬가지로 .inputrcbash readline내장이 필요하지 않습니다.

그렇기 때문에 bind에서는 필요 .bashrc하지만 에서는 필요하지 않습니다 .inputrc.

관련 정보