Bash 탭을 대소 문자를 구분하지 않는 방법으로 사용할 수 있습니까?
$ bash --version
GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin10.0)
Copyright (C) 2007 Free Software Foundation, Inc.
Mac OS X 10.6을 사용하고 있습니다
Bash 탭을 대소 문자를 구분하지 않는 방법으로 사용할 수 있습니까?
$ bash --version
GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin10.0)
Copyright (C) 2007 Free Software Foundation, Inc.
Mac OS X 10.6을 사용하고 있습니다
답변:
/etc/inputrc
포함 하도록 텍스트 업데이트
사건을 무시하고 무시하다
그런 다음을 사용 ^X ^R
하여 구성을 다시로드하십시오.
^X ^R
inputrc
bind "set completion-ignore-case on"
명령 행에서 할 수 있습니다 . 터미널 세션에만 해당됩니다
사용의 장단점 대조하는 가늠자의 이익으로 재구성 [.]inputrc
대를 .bash_profile
. 그의 도움
을 위해 underscore_d에 대한 모자의 팁 .
참고 : Bash의 명령 줄 편집은 Readline 라이브러리에서 제공합니다. 그것을 커스터마이징하는 것은 사소하지는 않지만 학습 가치가 있습니다. 이 기능에는 미리 정의 된 텍스트 스 니펫을 삽입하기위한 사용자 정의 키보드 단축키를 정의하는 기능이 포함 되어 있습니다. Bash Reference Manual의 Command Line Editing 을 참조하십시오.
하려면 지속적으로 배쉬 탭 완성은 대소 문자를 구분합니다
옵션 A : 이미 가지고있는 경우 :
/etc/inputrc
파일 (시스템 전체에 적용, 수정 필요 sudo
) 및 / 또는 ~/.inputrc
파일 (사용자 별)
그리고 / 또는
readline 라이브러리를 광범위하게 사용자 정의하거나 스크립트 를 호출 할 때 스크립트 에도 사용자 정의를 효과적으로 적용 하려고합니다 read -e
.
라인 추가
set completion-ignore-case on
에 두 파일, 당신은 설정 여부에 따라서 효과적인 것으로 모든 사용자 또는 현재 사용자 (필요한 경우, 파일을 만듭니다).
파일 및 디렉토리 이름을 쉽게 완성 할 수있는 관련 명령은 다음과 같습니다.
set show-all-if-ambiguous on
일치하는 항목이 둘 이상인 경우 Tab 키를 두 번 누를 필요가 없습니다 .
옵션 B : 또는 ~/.bash_profile
OS X (또는 ~/.bashrc
Linux) 의 사용자 특정 파일에 readline 명령을 내장 인수에 단일 인수 로 전달하여 추가 할 수 있습니다 .bind
bind "set completion-ignore-case on"
bind "set show-all-if-ambiguous on"
주 bind
의 명령은 ~/.bash_profile
/ ~/.bashrc
하나에 해당하는 명령보다 우선 /etc/inputrc
나 ~/.inputrc
.
위에서 암시 된 것처럼,이 방법으로 정의 된 Readline 구성은 사용자 입력을 읽기위한 Readline 지원을 활성화하기 위해 호출 하는 스크립트 에는 적용 되지 않습니다 .read -e
cd
명령 까지도 가능 합니다. 어느 것이이 질문을 해결 하고 수천 번의 키 입력을 절약 할 수 있습니다. :)
show-all-if-ambiguous
. 그러나 "대안으로" 라고 말했기 bind
때문에 inputrc
파일을 불필요하게 만드는 것처럼 보일 때 실제로 이것을 통해 어떤 이점이 있습니까?
inputrc
없었지만 ~/.inputrc
, 이것들과 다른 유용한 지시어를 행복하게 만들고 추가했습니다. 모든 독자가 /etc/inputrc
다른 사용자에게 영향 을 미치는 것을 알고 있다고 가정합니다 (후자가 영향을받는 설정을 무시하지 않는 한)? 우리가 경고를 언급하는 동안;)
/etc/inputrc
또는로~/.inputrc
지정된 파일INPUTRC
만 이동할 수 있습니다. Bash 프롬프트에서 입력하면 작동하지 않습니다.