Windows 10에서 대소 문자를 구분하는 파일 및 폴더 이름을 사용하는 방법
Windows 10은 이제 Linux 및 기타 UNIX와 유사한 운영 체제와 마찬가지로 대 / 소문자를 구분하는 파일 시스템 (선택 사항)을 제공합니다. 이 기능을 사용하면 모든 Windows 프로세스에서 대 / 소문자 구분 파일과 폴더를 올바르게 처리합니다. 즉, "파일"과 "파일"이 두 개의 개별 파일로 표시됩니다..
작동 방법
이것은 디렉터리 단위로 활성화 할 수있는 NTFS 파일 시스템 기능입니다. 전체 파일 시스템에는 적용되지 않으므로 개발 목적으로 사용하는 특정 폴더에 대소 문자를 구분할 수 있습니다.
대 / 소문자 구분은 Windows 10의 2018 년 4 월 업데이트에서 추가되었습니다. 그 이전에는 Linux 용 Windows 서브 시스템으로도 알려진 Bash on Windows 환경에서 대소 문자를 구분하여 Windows 폴더를 마운트 할 수있었습니다. Linux 환경에서는 정상적으로 작동하지만 일반적인 Windows 응용 프로그램을 혼란스럽게합니다. 이것은 이제 파일 시스템 수준의 기능입니다. 즉, 모든 Windows 응용 프로그램에서 해당 폴더의 대 / 소문자를 구분하는 파일 시스템을 볼 수 있습니다..
이 기능은 fsutil.exe
명령 행에서 실행해야합니다. 명령 프롬프트 또는 PowerShell 창에서 수행 할 수 있습니다. 기본 설정을 사용하면 Linux 환경에서 생성 한 폴더가 자동으로 대 / 소문자를 구분하도록 구성됩니다..
대 / 소문자 구분으로 디렉터리를 설정하는 방법
시작하려면 시작 단추를 마우스 오른쪽 단추로 클릭 한 다음 "PowerShell (Administrator)"명령을 선택하십시오. 명령 프롬프트를 사용하려면 시작 메뉴에서 "명령 프롬프트"를 검색하고 마우스 오른쪽 단추로 클릭 한 다음 "관리자 권한으로 실행"명령을 선택할 수 있습니다. 이 명령은 선택한 명령 줄 환경에 관계없이 동일하게 작동합니다..
권한에 따라 실제로이 명령을 실행하기 위해 관리자 권한이 필요하지 않을 수도 있습니다. 기술적으로 수정하려는 디렉토리에 대해 "속성 쓰기"권한이 필요합니다. 대부분의 경우 이는 사용자 폴더 외부의 폴더 (예 : c : \ project)를 편집하려는 경우 관리자 권한이 필요하며 사용자 폴더 내의 폴더를 수정하려는 경우가 아니라는 의미입니다. as c : \ users \이름\계획.
계속하기 전에 현재 실행중인 Linux 소프트웨어가 현재 수정하려는 디렉토리를 참조하고 있지 않은지 확인하십시오. Linux 소프트웨어가 폴더에 액세스하는 동안 폴더의 대소 문자 구분 플래그를 변경하면 안됩니다. 실행중인 Linux 프로세스가 현재 디렉토리 또는 디렉토리 내의 어떤 항목을 현재 작업 디렉토리로 여는 경우에도 Linux 응용 프로그램은 변경 사항을 인식하지 못하므로 문제가 발생할 수 있습니다.
폴더 대소 문자를 구분하려면 다음 명령을 입력하여 "C : \ folder"를 폴더의 경로로 바꿉니다.
fsutil.exe 파일 setCaseSensitiveInfo C : \ folder enable
폴더 경로에 공백이 있으면 다음과 같이 전체 경로를 따옴표로 묶습니다.
fsutil.exe 파일 setCaseSensitiveInfo "C : \ my folder"enable
하위 폴더에는 영향을주지 않습니다.
대 / 소문자 구분 플래그는 적용 할 특정 폴더에만 영향을줍니다. 해당 폴더의 하위 폴더에 자동으로 상속되지 않습니다..
즉, C : \ folder 폴더에 C : \ folder \ test 및 C : \ folder \ stuff 하위 폴더가 있고 그 안에 C : \ Folder 폴더를 대 / 소문자로 구분하면 단순히 "test"및 "stuff"하위 폴더는 대소 문자를 구분합니다. 적절한 도구를 실행해야합니다. fsutil
명령을 세 가지 폴더 모두 대소 문자를 구분하도록 별도로 지정하십시오..
리눅스 도구는 기본적으로 대소 문자를 구분하는 폴더를 만듭니다
Linux 용 Windows 서브 시스템 (Bash 쉘)에서 실행하는 Linux 도구는 대소 문자를 구분하는 플래그가 설정된 폴더를 작성합니다. 따라서, mkdir
명령을 사용하여 Bash 쉘 또는 개발 도구에서 디렉토리를 작성하면 마운트 된 Windows 파일 시스템에서 작성한 경우에도 생성 된 디렉토리가 대소 문자를 구분하여 자동으로 설정됩니다.
기술적으로 이것은 Linux 환경 용 DrvFs 파일 시스템이 대문자 = dir
기본적으로 플래그입니다. 그만큼 대문자 = dir
옵션은 Linux 환경이 각 디렉토리의 NTFS 플래그를 따르도록 설정하고 Linux 환경 내에서 작성된 디렉토리에서 대소 문자 구분 플래그를 자동으로 설정합니다. 원하는 경우 wsl.conf 파일에서이 옵션을 변경할 수 있습니다..
Linux 환경에서 폴더를 만들면 적절한 대소 문자 구분 설정을 사용하여 폴더가 만들어 지므로 fsutil.exe 명령을 사용하지 않아도됩니다.
디렉토리가 대소 문자를 구분하는지 확인하는 방법
현재 디렉토리가 대소 문자를 구분하는지 확인하려면 "C : \ folder"를 폴더의 경로로 바꾸어 다음 명령을 실행하십시오.
fsutil.exe 파일 queryCaseSensitiveInfo C : \ folder
디렉토리에 대해 대소 문자를 구분할 수있는 경우 "대소 문자를 구분하는 [path] 속성이 활성화되어 있습니다"라는 메시지가 나타납니다. 디렉토리에서 표준 Windows 대소 문자 구분을 사용하는 경우 대소 문자 구분 속성이 켜져 있습니다 디렉토리 [경로]가 비활성화되었습니다. "
디렉토리 대소 문자를 구분하지 않는 방법
변경 사항을 취소하고 디렉토리를 대소 문자를 구분하지 않으려면 (빌 게이츠가 의도 한대로) "C : \ folder"를 폴더의 경로로 바꾸고 다음 명령을 실행하십시오.
fsutil.exe 파일 setCaseSensitiveInfo C : \ folder 비활성화
이름이 충돌하는 파일이 들어있는 폴더의 대소 문자를 구분하지 않으려하면 "오류 : 디렉터리가 비어 있지 않습니다."라는 메시지가 나타납니다. 계속하기 전에 충돌하는 파일을 제거하거나 이름을 변경해야합니다..