ดังที่คุณทราบอยู่แล้วระบบไฟล์ Windows NTFS ถือว่าไฟล์และชื่อโฟลเดอร์เป็นแบบไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่ ตัวอย่างเช่นสำหรับระบบปฏิบัติการและแอป MyFile.txt และ myfile.txt เป็นไฟล์เดียวกัน อย่างไรก็ตามสิ่งต่าง ๆ ใน Linux สำหรับระบบปฏิบัติการนี้เป็นไฟล์สองไฟล์ที่แตกต่างกัน ความแตกต่างในพฤติกรรมนี้อาจสร้างปัญหาสำหรับผู้ใช้ WSL ในการแก้ไขปัญหา Windows 10 มีความสามารถในการเปิดใช้งานโหมดพิจารณาตัวพิมพ์เล็กและใหญ่สำหรับโฟลเดอร์
การโฆษณา
หากคุณเคยใช้ไฟล์ ระบบย่อยของ Windows สำหรับ Linux คุณอาจทราบดีว่ามันช่วยให้คุณสามารถจัดการกับระบบไฟล์ Windows ของคุณ (ติดตั้งภายใต้ / mnt / c, / mnt / d ฯลฯ ) โดยคำนึงถึงตัวพิมพ์เล็กและใหญ่ ซึ่งหมายความว่าคุณสามารถสร้างไฟล์ที่มีชื่อแตกต่างกันไปตามแต่ละกรณีเท่านั้น (เช่น foo.txt และ FOO.TXT)
อย่างไรก็ตามการใช้ไฟล์เหล่านั้นใน Windows ไม่สามารถทำได้จริงๆ เนื่องจากแอปพลิเคชัน Windows ถือว่าระบบไฟล์ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่จึงไม่สามารถแยกความแตกต่างระหว่างไฟล์ที่ชื่อแตกต่างกันในกรณีเท่านั้น แม้ว่า File Explorer จะแสดงทั้งสองไฟล์ แต่จะเปิดเพียงไฟล์เดียวไม่ว่าคุณจะคลิกไฟล์ใดก็ตาม
เริ่มต้นด้วย Windows Insider build 17093 มีวิธีใหม่ในการจัดการไฟล์ที่สำคัญของตัวพิมพ์เล็กและใหญ่ใน Windows: ความไวต่อตัวพิมพ์ต่อไดเร็กทอรี ความสามารถนี้ได้รับการเพิ่มเพื่อให้ผู้ใช้ทำงานร่วมกันได้ดีขึ้นเมื่อใช้ไฟล์ที่คำนึงถึงขนาดตัวพิมพ์ นอกจากนี้คุณสามารถใช้กับแอปพลิเคชัน Windows ทั่วไปได้ เริ่มต้นใน Windows 10 Build 17110 ลักษณะการทำงานนี้เป็นค่าเริ่มต้น
รายละเอียดเพิ่มเติม
กรณีไวใน Windows
ระบบปฏิบัติการตระกูล Windows NT (รวมถึง Windows 10) มีความสามารถในการดำเนินการระบบไฟล์แบบตรงตามตัวพิมพ์เล็กและใหญ่เสมอ แอปพลิเคชันสามารถผ่านไฟล์FILE_FLAG_POSIX_SEMANTICS
ตั้งค่าสถานะเป็นCreateFile
API เพื่อระบุว่าพวกเขาต้องการให้พา ธ ถือว่าเป็นกรณี ๆ ไป อย่างไรก็ตามด้วยเหตุผลด้านความเข้ากันได้มีคีย์รีจิสทรีส่วนกลางที่แทนที่ลักษณะการทำงานนี้ เมื่อตั้งค่าคีย์นี้การดำเนินการไฟล์ทั้งหมดจะไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่แม้ว่าไฟล์FILE_FLAG_POSIX_SEMANTICS
ระบุแฟล็ก ตั้งแต่ Windows XP นี่เป็นค่าเริ่มต้น
netflix บนทีวี amazon fire ไม่ทำงาน
ระบบย่อยของ Windows สำหรับ Linux ใช้กลไกอื่นซึ่งตัวมันเองจะข้ามคีย์รีจิสทรีนั้นทำให้เราสามารถดำเนินการกับระบบไฟล์ที่เป็นตัวพิมพ์เล็กและใหญ่ได้ นี่คือสิ่งที่ช่วยให้แอปพลิเคชัน Linux ที่ทำงานใน WSL สามารถใช้ชื่อไฟล์ที่แตกต่างกันไปตามแต่ละกรณีเช่นเดียวกับที่สามารถทำได้บน Linux จริงแม้ว่าจะมีชุดคีย์รีจิสทรีส่วนกลางก็ตาม
น่าเสียดายที่สิ่งนี้ทำให้คุณมีไฟล์ที่แอปพลิเคชัน Windows ไม่สามารถเข้าถึงได้ แม้ว่าคุณจะเปลี่ยนคีย์รีจิสทรีส่วนกลางได้ แต่ก็ยังใช้ได้กับแอปพลิเคชันที่ใช้เท่านั้นFILE_FLAG_POSIX_SEMANTICS
และสิ่งนี้จะเปลี่ยนการทำงานของไฟล์ทั้งหมดในไดรฟ์ทั้งหมดซึ่งอาจไม่ได้ตั้งใจและอาจทำให้แอปพลิเคชันบางตัวเสียหาย
ความไวของเคสต่อไดเรกทอรี
เพื่อแก้ปัญหานี้ Microsoft ได้เพิ่มแฟล็กใหม่ที่คำนึงถึงตัวพิมพ์เล็กและใหญ่ซึ่งสามารถนำไปใช้กับไดเร็กทอรี สำหรับไดเร็กทอรีที่มีชุดแฟล็กนี้การดำเนินการทั้งหมดบนไฟล์ในไดเร็กทอรีนั้นจะพิจารณาตัวพิมพ์เล็กและใหญ่โดยไม่คำนึงว่าFILE_FLAG_POSIX_SEMANTICS
ถูกระบุ ซึ่งหมายความว่าหากคุณมีไฟล์สองไฟล์ที่แตกต่างกันไปตามแต่ละกรณีในไดเร็กทอรีที่ระบุว่าคำนึงถึงขนาดตัวพิมพ์แอปพลิเคชันทั้งหมดจะสามารถเข้าถึงได้
เปิดใช้งานโหมดละเอียดอ่อนสำหรับโฟลเดอร์
ในการเปิดหรือปิดคุณสมบัตินี้คุณควรใช้แอพ fsutil.exe ในตัว
เพื่อเปิดใช้งานโหมดคำนึงถึงขนาดตัวพิมพ์สำหรับโฟลเดอร์ ให้ดำเนินการดังต่อไปนี้
- เปิด พรอมต์คำสั่งที่ยกระดับ .
- พิมพ์คำสั่งต่อไปนี้:
ไฟล์ fsutil.exe setCaseSensitiveInfo 'เส้นทางแบบเต็มไปยังโฟลเดอร์ของคุณ' เปิดใช้งาน
แทนที่ส่วนเส้นทางด้วยเส้นทางที่ถูกต้องที่ตรงกับพีซีของคุณ
ตัวอย่างเช่น,ไฟล์ fsutil.exe setCaseSensitiveInfo 'C: data Winaero Linux' เปิดใช้งาน
- คุณทำเสร็จแล้ว
ตอนนี้คุณสามารถสร้างไฟล์สองไฟล์ที่มีชื่อเดียวกันและมีความแตกต่างเพียงกรณีเท่านั้น Windows 10 จะประมวลผลอย่างถูกต้องในโฟลเดอร์เฉพาะนี้
minecraft วิธีให้ชาวบ้านผสมพันธุ์
หากต้องการดูสถานะคุณลักษณะสำหรับโฟลเดอร์ให้เรียกใช้คำสั่ง
ไฟล์ fsutil.exe queryCaseSensitiveInfo 'เส้นทางแบบเต็มไปยังโฟลเดอร์ของคุณ'
ตัวอย่างเช่น,
ไฟล์ fsutil.exe queryCaseSensitiveInfo 'C: data Winaero Linux'
คุณจะเห็นสิ่งนี้:
วิธีเปิดไฟล์ .docx โดยไม่ใช้ word
สุดท้าย เพื่อปิดใช้งานโหมดคำนึงถึงขนาดตัวพิมพ์สำหรับโฟลเดอร์ เรียกใช้คำสั่งถัดไปในพรอมต์คำสั่งที่เปิดในฐานะผู้ดูแลระบบ:
ไฟล์ fsutil.exe setCaseSensitiveInfo 'C: data Winaero Linux' ปิดการใช้งาน
ใช้เส้นทางโฟลเดอร์ที่ถูกต้องและคุณทำเสร็จแล้ว
บันทึก: ไม่สนับสนุนการปิดใช้งานแอ็ตทริบิวต์ CaseSensitiveInfo สำหรับโฟลเดอร์ที่ไม่ว่างเปล่า คุณต้องลบไฟล์ทั้งหมดออกจากโฟลเดอร์ก่อนที่จะปิดใช้งาน
แค่นั้นแหละ.