Computer >> คอมพิวเตอร์ >  >> ระบบ >> Windows

วิธีลบไฟล์ที่มีอักขระแปลกๆ ใน Windows

ทุก ๆ สองสามปีฉันประสบปัญหาเล็ก ๆ น้อย ๆ นี้ ฉันพยายามลบไฟล์ใน Windows Explorer และมันแสดงข้อผิดพลาดแจ้งว่าไม่พบ (และลบ) ไฟล์ที่ระบุ ตกลง เกิดขึ้น ดังนั้นฉันจึงไปที่บรรทัดคำสั่งและทำการลบที่นั่น อย่างไรก็ตาม ครั้งนี้ ฉันพบกับอุปสรรค์ใหม่ การดำเนินการลบตามปกติจะไม่เสร็จสมบูรณ์ โดยมีพรอมต์คำสั่งแจ้งว่า:ระบบไม่พบไฟล์ที่ระบุ

ฉันพบปัญหานี้กับไฟล์ล็อกที่สร้างโดยเครื่องพิมพ์ Xerox B215 ของฉันบน Samba ที่ใช้ร่วมกัน ด้วยเหตุผลแปลกๆ บางประการ เครื่องพิมพ์จึงตัดชื่อไฟล์จริงให้สั้นลง และแทนที่จะเป็น "Xerox_Scan.pdf" กลับตั้งชื่อเป็น "Xerox_Scan" เท่านั้น ฮ่า แต่มันเป็นอย่างนั้นจริงๆ เหรอ

ปัญหา

ดังนั้นในบรรทัดคำสั่ง เราจะได้สิ่งนี้:

เดล "Xerox_Scan"
ระบบไม่พบไฟล์ที่ระบุ

ณ จุดนี้ ฉันตระหนักว่าชื่อไฟล์อาจมีอักขระต่อท้ายแปลก ๆ ซึ่งไม่ปรากฏใน Windows Explorer หรือพรอมต์คำสั่ง สิ่งนี้ทำให้ฉันนึกถึงเคล็ดลับเล็กๆ น้อยๆ ที่ฉันและเพื่อนร่วมงานบางคนจะใช้ในการสอบการดูแลระบบสำหรับรุ่นน้องของเรา เราจะสร้างไฟล์ที่มีอักขระพิเศษต่อท้าย เช่น เคล็ดลับ Alt + 255 แบบเก่าใน DOS แล้วดูว่าใครจะคิดออก ใน Linux คุณสามารถใช้ยูทิลิตี้ octal dump (od) เพื่อดูชุดอักขระทั้งหมดได้

วิธีแก้ปัญหา

ใน Windows แนวทางคือการค้นหาแบบละโมบ (หรือการลบเพื่อให้แม่นยำยิ่งขึ้น) หากคุณสงสัยว่าเกิดอะไรขึ้นที่นี่ ให้นึกถึง Regular Expression เรากำลังมองหาไฟล์ใดๆ (/s) ในไดเร็กทอรีย่อยใดๆ ในพาธที่ระบุ และเรากำลังมองหาไฟล์ที่มีอักขระช่องว่างต่อท้ายเป็นศูนย์หรือมากกว่านั้น บูม เสร็จงาน ไม่อัปลักษณ์อีกต่อไป

del /s \\?\D:\Scans\Xerox_Scan"
ไฟล์ที่ถูกลบ - \\?\D:\Scans\Xerox_Scan

บทสรุป

ในทางเทคนิคแล้ว ไฟล์ที่ลบไม่ได้ไม่ควรเป็นปัญหาใหญ่ แต่เป็นปัญหาในระดับ OCD ในเชิงความสวยงาม และในทางทฤษฎีแล้ว ไฟล์ดังกล่าวอาจรบกวนการทำงานของสคริปต์สำรองข้อมูลหรืองานที่จัดกำหนดการไว้ หากไม่ได้ออกแบบมาเพื่อละเว้นไฟล์เหล่านี้ ใจดี. ดังนั้น คุณจึงต้องการบำรุงรักษาเพียงเล็กน้อย

มีวิธีอื่นอีกมากมายที่คุณสามารถใช้ได้ ตัวอย่างเช่น Process Explorer ยังสามารถค้นหาไฟล์แล้วลบออก รวมถึงอักขระช่องว่าง แต่ฉันพบว่าการดำเนินการค้นหา regex บรรทัดคำสั่งอย่างง่ายเป็นโซลูชันที่สวยงามที่สุด อย่างไรก็ตาม งานของเรานั้นน่ารำคาญ แต่ก็มีวิธีแก้ปัญหาที่รวดเร็วและไม่เจ็บปวด แล้วพบกันใหม่

ไชโย.