man bash
설명하다:
완전한 지도 케이스(닫힌 상태)
On으로 설정하고, Completion-ignore-case가 활성화된 경우, readline은 대소문자를 구분하지 않는 파일 이름 일치 및 완성을 수행할 때 하이픈(-)과 밑줄(_)을 동일하게 처리합니다.
$ bind -v|grep case
set completion-ignore-case on
set completion-map-case on
내가 입력하는 동안
$ touch _test
$ chmod +x -t<TAB>
그것은 완료된다
$ chmod +x _test
하지만 둘 다
$ ./-t<TAB>
$ ls -t<TAB>
충분히.
왜 그런 겁니까? 고칠 수 있나요?
답변1
Chet Raimi는 내 보고서에 다음과 같이 응답했습니다.
신고해 주셔서 감사합니다. 이 두 옵션은 파일 이름 완성에 적용되지만 명령 완성에는 적용되지 않습니다(대부분 readline 외부에서 처리됨). 이 기능은 현재 readline의 파일 이름 완성의 일부이므로 readline 외부에 노출하는 것을 고려하고 있지만 시간이 좀 걸리고 버전 변경이 필요할 수 있습니다.