วิธีการเปิดใช้งานชื่อไฟล์และชื่อโฟลเดอร์ที่ละเอียดอ่อนบน Windows 10
ขณะนี้ Windows 10 มีระบบไฟล์ที่คำนึงถึงตัวพิมพ์เล็กและตัวเลือกเช่นเดียวกับ Linux และระบบปฏิบัติการแบบ UNIX กระบวนการ Windows ทั้งหมดจะจัดการไฟล์และโฟลเดอร์ที่มีตัวพิมพ์เล็กและตัวพิมพ์ใหญ่หากคุณเปิดใช้งานคุณสมบัตินี้ กล่าวอีกนัยหนึ่งพวกเขาจะเห็น "ไฟล์" และ "ไฟล์" เป็นไฟล์แยกกันสองไฟล์.
วิธีนี้ใช้ได้ผล
นี่คือคุณสมบัติระบบไฟล์ NTFS ที่คุณสามารถเปิดใช้งานได้สำหรับแต่ละไดเรกทอรี มันใช้ไม่ได้กับระบบไฟล์ทั้งหมดของคุณดังนั้นคุณสามารถเปิดใช้งานการพิจารณาตัวพิมพ์เล็กและตัวพิมพ์ใหญ่สำหรับโฟลเดอร์เฉพาะที่คุณใช้เพื่อการพัฒนา.
เพิ่มความไวตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ในการอัปเดตเมษายน 2018 ของ Windows 10 ก่อนหน้านี้มีความเป็นไปได้ที่จะติดตั้งโฟลเดอร์ Windows เป็นแบบตรงตามตัวพิมพ์ใหญ่ - เล็กในสภาพแวดล้อม Bash บน Windows หรือที่เรียกว่าระบบย่อย Windows สำหรับ Linux มันทำงานได้ดีในสภาพแวดล้อม Linux แต่มันก็สับสนกับแอพพลิเคชั่น Windows ปกติ ตอนนี้เป็นคุณลักษณะระดับระบบไฟล์ซึ่งหมายความว่าแอปพลิเคชัน Windows ทั้งหมดจะเห็นระบบไฟล์ที่ตรงตามตัวพิมพ์ใหญ่ - เล็กในโฟลเดอร์นั้นด้วย.
คุณลักษณะนี้เปิดใช้งานผ่านทาง fsutil.exe
คำสั่งซึ่งคุณจะต้องเรียกใช้จากบรรทัดคำสั่ง คุณสามารถทำได้จากหน้าต่างพรอมต์คำสั่งหรือ PowerShell ด้วยการตั้งค่าเริ่มต้นโฟลเดอร์ที่คุณสร้างภายในสภาพแวดล้อม Linux จะได้รับการกำหนดค่าโดยอัตโนมัติให้ตรงตามตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก.
วิธีการตั้งค่าไดเรกทอรีเป็นแบบตรงตามตัวพิมพ์ใหญ่ - เล็ก
ในการเริ่มต้นให้คลิกขวาที่ปุ่มเริ่มแล้วเลือกคำสั่ง“ PowerShell (ผู้ดูแลระบบ)” หากคุณต้องการใช้พรอมต์คำสั่งคุณสามารถค้นหา“ พรอมต์คำสั่ง” ในเมนูเริ่มของคุณคลิกขวาแล้วเลือกคำสั่ง“ เรียกใช้ในฐานะผู้ดูแลระบบ” คำสั่งทำงานเหมือนกันไม่ว่าคุณจะเลือกใช้สภาพแวดล้อมแบบใดในบรรทัดคำสั่ง.
คุณอาจไม่จำเป็นต้องใช้สิทธิ์ของผู้ดูแลระบบในการเรียกใช้คำสั่งนี้ขึ้นอยู่กับสิทธิ์ของคุณ ในทางเทคนิคคุณต้องได้รับอนุญาต“ เขียนคุณลักษณะ” สำหรับไดเรกทอรีที่คุณต้องการแก้ไข ในกรณีส่วนใหญ่หมายความว่าคุณจะต้องมีสิทธิ์ผู้ดูแลระบบหากคุณต้องการแก้ไขโฟลเดอร์ที่อยู่นอกโฟลเดอร์ผู้ใช้เช่น c: \ project - และไม่ใช่หากคุณต้องการแก้ไขโฟลเดอร์ในโฟลเดอร์ผู้ใช้ของคุณ ณ วันที่ c: \ users \ชื่อ\โครงการ.
ก่อนดำเนินการต่อตรวจสอบให้แน่ใจว่าไม่มีซอฟต์แวร์ Linux ที่ใช้งานอยู่กำลังอ้างอิงไดเรกทอรีที่คุณกำลังจะแก้ไข คุณไม่ควรเปลี่ยนการคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ในโฟลเดอร์ในขณะที่ซอฟต์แวร์ Linux กำลังเข้าถึงอยู่ หากกระบวนการลีนุกซ์ที่รันอยู่ในปัจจุบันมีไดเรกทอรีหรือสิ่งใดก็ตามที่อยู่ในไดเรกทอรีที่เปิดอยู่แม้ว่าจะเป็นไดเรกทอรีทำงานปัจจุบันแอปพลิเคชัน Linux จะไม่รู้จักการเปลี่ยนแปลงและอาจเกิดปัญหาขึ้น.
หากต้องการทำให้โฟลเดอร์เป็นกรณีที่สำคัญให้พิมพ์คำสั่งต่อไปนี้แทนที่“ C: \ folder” ด้วยพา ธ ไปยังโฟลเดอร์:
ไฟล์ fsutil.exe เปิดใช้งานโฟลเดอร์ setCaseSensitiveInfo C: \
หากเส้นทางโฟลเดอร์มีช่องว่างให้ใส่พา ธ ทั้งหมดในเครื่องหมายคำพูดเช่น:
ไฟล์ fsutil.exe เปิดใช้งาน setCaseSensitiveInfo "C: \ my folder"
สิ่งนี้ไม่ส่งผลกระทบต่อโฟลเดอร์ย่อย
การคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่มีผลกับโฟลเดอร์เฉพาะที่คุณใช้งานเท่านั้น มันไม่ได้รับการสืบทอดโดยอัตโนมัติจากโฟลเดอร์ย่อยของโฟลเดอร์นั้น.
กล่าวอีกนัยหนึ่งถ้าคุณมีโฟลเดอร์ชื่อ C: \ folder และมันมี C: \ folder \ test และ C: \ folder \ stuff โฟลเดอร์ย่อยอยู่ข้างในเพียงแค่ทำให้โฟลเดอร์ C: \ case เล็ก ๆ น้อย ๆ จะไม่ทำให้ “ test” และ“ stuff” โฟลเดอร์ย่อยที่อยู่ภายในนั้นเล็กและใหญ่ คุณจะต้องเรียกใช้ที่เหมาะสม fsutil
คำสั่งแยกต่างหากเพื่อให้ทั้งสามกรณีเป็นกรณีที่สำคัญ.
เครื่องมือ Linux สร้างโฟลเดอร์ที่ละเอียดอ่อนตามตัวพิมพ์ใหญ่โดยค่าเริ่มต้น
เครื่องมือ Linux ที่คุณใช้ในระบบย่อย Windows สำหรับ Linux (Bash shell) ตอนนี้สร้างโฟลเดอร์ที่มีการตั้งค่าตัวอักษรขนาดเล็ก ดังนั้นไม่ว่าคุณจะใช้ mkdir
คำสั่งเพื่อสร้างไดเรกทอรีภายใน Bash shell หรือเครื่องมือพัฒนาทำเพื่อคุณไดเรกทอรีที่สร้างขึ้นจะถูกตั้งค่าโดยอัตโนมัติเป็นตัวพิมพ์เล็กและตัวพิมพ์ใหญ่แม้ว่าคุณจะสร้างมันบนระบบไฟล์ Windows ที่ติดตั้ง.
ในทางเทคนิคสิ่งนี้เกิดขึ้นเนื่องจากระบบไฟล์ DrvFs สำหรับสภาพแวดล้อม Linux ใช้ กรณี = dir
ธงตามค่าเริ่มต้น กรณี = dir
ตัวเลือกตั้งค่าสภาพแวดล้อม Linux ให้เคารพแฟล็ก NTFS ของแต่ละไดเร็กทอรีและตั้งค่าแฟล็กการคำนึงถึงขนาดตัวพิมพ์บนไดเร็กทอรีที่สร้างจากภายในสภาวะแวดล้อม Linux โดยอัตโนมัติ คุณสามารถเปลี่ยนตัวเลือกนี้ในไฟล์ wsl.conf ของคุณได้ถ้าต้องการ.
ตราบใดที่คุณสร้างโฟลเดอร์จากสภาพแวดล้อม Linux พวกมันจะถูกสร้างขึ้นด้วยการตั้งค่าความไวตัวพิมพ์เล็กและตัวพิมพ์ใหญ่และคุณไม่จำเป็นต้องสัมผัสคำสั่ง fsutil.exe.
วิธีตรวจสอบว่า Directory เป็นแบบตรงตัวพิมพ์หรือไม่
ในการตรวจสอบว่าไดเรกทอรีมีความสำคัญตัวพิมพ์เล็กหรือใหญ่ให้เรียกใช้คำสั่งต่อไปนี้แทนที่“ C: \ folder” ด้วยพา ธ ไปยังโฟลเดอร์.
fsutil.exe ไฟล์ queryCaseSensitiveInfo C: \ โฟลเดอร์
หากเปิดใช้งานการพิจารณาตัวพิมพ์เล็กและตัวพิมพ์ใหญ่สำหรับไดเรกทอรีคุณจะเห็นว่า“ เปิดใช้งานแอตทริบิวต์ตัวพิมพ์เล็กและตัวพิมพ์เล็กในไดเรกทอรี [เส้นทาง]” หากไดเรกทอรีใช้ตัวพิมพ์เล็กและตัวพิมพ์เล็กของ Windows คุณจะเห็น ไดเรกทอรี [เส้นทาง] ถูกปิดใช้งาน”
วิธีสร้าง Case Directory Insensitive
หากต้องการยกเลิกการเปลี่ยนแปลงของคุณและทำให้ไดเรกทอรีตัวพิมพ์เล็กและตัวพิมพ์เล็กเสียอีก (ตามที่ Bill Gates ตั้งใจไว้) ให้เรียกใช้คำสั่งต่อไปนี้แทนที่“ C: \ folder” ด้วยพา ธ ไปยังโฟลเดอร์.
ไฟล์ fsutil.exe setCaseSensitiveInfo C: \ โฟลเดอร์ถูกปิดใช้งาน
หากคุณพยายามปิดใช้งานการพิจารณาตัวพิมพ์เล็กและตัวพิมพ์ใหญ่สำหรับโฟลเดอร์ที่มีไฟล์ที่มีชื่อที่จะชนกันคุณจะเห็นข้อความ“ ข้อผิดพลาด: ไดเรกทอรีไม่ว่างเปล่า” คุณจะต้องลบหรือเปลี่ยนชื่อไฟล์ที่ขัดแย้งก่อนดำเนินการต่อ.