OSX의 bash 명령은 대소 문자를 구분하지 않습니까? 나는 "which TR"을 입력하고 / usr / bin / TR을 보여 주지만, 그러한 바이너리는 없다. 다른 바이너리에도 대문자로 입력 할 때도 마찬가지입니다. 아니면 Terminal.app이이 번역을하고 있습니까? 이것을 끄려면 어떻게해야합니까?
locale
적이고 완료 무시 무시 사례 / nocaseglob
OSX의 bash 명령은 대소 문자를 구분하지 않습니까? 나는 "which TR"을 입력하고 / usr / bin / TR을 보여 주지만, 그러한 바이너리는 없다. 다른 바이너리에도 대문자로 입력 할 때도 마찬가지입니다. 아니면 Terminal.app이이 번역을하고 있습니까? 이것을 끄려면 어떻게해야합니까?
locale
적이고 완료 무시 무시 사례 / nocaseglob
답변:
이것은 실제로 bash 또는 Terminal.app가 아닌 디스크 파일 시스템의 기능입니다.
HFS + (Mac 파일 시스템)는 일반적으로 대소 문자를 구분하지 않지만 대소 문자를 유지 하도록 구성됩니다 . 이것은 파일 시스템이 고려 foo
하고 FoO
동일 하다는 것을 의미 하지만, 새 파일을 만들 때 대문자로 된 문자와 그렇지 않은 문자를 기억합니다.
HFS +로 디스크를 포맷 할 때 파일 시스템의 대소 문자 구분 여부를 선택할 수 있습니다. UFS (Unix FileSystem)로 포맷하도록 선택한 경우 항상 대소 문자를 구분합니다 (AFAIK).
디스크가 대소 문자를 구분하는지 확인하려면 다음을 실행하십시오.
diskutil info <device>
예를 들면 다음과 같습니다.
diskutil info disk0s2
Name:
줄을 찾으십시오 . 이와 비슷한 것을 읽으면 Mac OS Extended (Case-sensitive, Journaled)
대소 문자를 구분한다는 의미입니다. 그냥 읽지 Mac OS Extended
않으면 (을 제외하고 Case-sensitive
) 대소 문자 만 보존하고 대소 문자를 구분 하지 않습니다 .
i
점선 대문자에 해당하는 İ
점이없는 대문자가있는 동안, I
점이없는 소문자에 해당 ı
하지만, 어떤 솔루션은 나쁜 것입니다. 그리고 ß
종종 2 S
초로 대문자 인 독일어 는 어떻습니까? 그리고 대문자를 사용할 때 종종 빠지는 악센트? 그리고 ... 대소 문자 구분은 이러한 모든 두통으로 사라집니다.
http://blog.nickburwell.com/blog/2008/11/mac-os-x-terminal-case-insensitive-auto 에 따라 한 줄 로이 문제를 해결했습니다.
echo "set completion-ignore-case On" >> ~/.inputrc
Bash는 대소 문자를 구분합니다.
방금 터미널에`whoami '를 입력하고 caps lock 버튼이 켜졌습니다.
`WHOAMI '와는 완전히 다른 반응을 얻었습니다.
'which'라는 WHOAMI 명령이 있지만 'ls'로는 찾을 수 없습니다.
whoami
프로그램 자체입니다. 실제로는와 같은 프로그램 id
이지만 실행 한 이름을 확인하고 id -un
"whoami"라는 이름으로 실행되는 경우 다른 출력 (과 동등한 )을 사용합니다. 이 검사는 대소 문자를 구분합니다. 의 출력을 비교 id
, WHOAMI
, WhOaMi
, WhoAmI
, 등 또한, 출력 비교 ls -li /usr/bin/whoami
대를 ls -li /usr/bin/WHOAMI
, 그리고 아이 노드 번호 (출력에 나열된 첫 번째 것은) 동일 있습니다 - 그들은 동일한 파일을 지정하는 두 가지 방법이야 .