สิ่งนี้สำคัญมากสำหรับฉันการตั้งชื่อไฟล์ / โฟลเดอร์ที่มีตัวอักษรเหล่านี้
อาจเป็นสิ่งสำคัญสำหรับคุณ แต่คุณจะต้องปล่อยวางและหาวิธีอื่นในการแก้ปัญหาของคุณ
อักขระเหล่านี้ไม่ได้รับอนุญาตจากการเรียกใช้ฟังก์ชัน Windows OS ที่จัดการชื่อไฟล์
ไม่ได้รับอนุญาตเป็นพิเศษเพราะมีประโยชน์อื่น:
- \- สงวนไว้สำหรับใช้เป็นตัวคั่นพา ธ และอักขระยกเว้น
- / - สงวนไว้สำหรับใช้เป็นตัวคั่นพา ธ
- : - สงวนไว้สำหรับใช้เป็นตัวคั่นชื่อไดรฟ์
- *และ?- สงวนไว้สำหรับใช้เป็นสัญลักษณ์แทนตัวอักษร
- "- สงวนไว้สำหรับใช้อ้างอิงชื่อที่มีช่องว่าง
- <, >และ|- สงวนไว้สำหรับใช้เป็นตัวดำเนินการเปลี่ยนเส้นทางคำสั่ง
แน่นอนคุณสามารถสร้างไฟล์ที่มีชื่อที่มีอักขระเหล่านี้โดยใช้ระบบปฏิบัติการที่แตกต่างกัน (ตราบเท่าที่ระบบปฏิบัติการนั้นสามารถอ่าน / เขียนระบบไฟล์ Windows)
อย่างไรก็ตามคุณจะไม่สามารถทำอะไรกับไฟล์เหล่านั้นโดยใช้โปรแกรม Windows และพวกเขาจะไม่เข้าใจชื่อไฟล์และจะสร้างข้อผิดพลาด
การตั้งชื่อไฟล์เส้นทางและเนมสเปซ
อนุสัญญาการตั้งชื่อ
กฎพื้นฐานต่อไปนี้เปิดใช้งานแอปพลิเคชันเพื่อสร้างและประมวลผลชื่อที่ถูกต้องสำหรับไฟล์และไดเรกทอรีโดยไม่คำนึงถึงระบบไฟล์:
...
ใช้อักขระใด ๆ ในหน้ารหัสปัจจุบันสำหรับชื่อรวมถึงอักขระ Unicode และตัวอักษรในชุดอักขระแบบขยาย (128–255) ยกเว้นตัวต่อไปนี้:
ไฟล์การตั้งชื่อซอร์ส, พา ธ และเนมสเปซ
แต่ฉันต้องการทำสิ่งนี้จริงๆ
ติดตั้งCygwintouch
และการใช้งาน
ฉันยังไม่ได้ทดสอบความเป็นไปได้ทั้งหมดยกเว้นงานต่อไปนี้:
touch :
touch \|
touch \"
touch \>
ตัวอย่างผลลัพธ์:
DavidPostill@Hal /f/test/impossible
$ ll
total 0
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:03 '"'
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:02 :
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:02 '|'
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:07 '>'
อย่างที่คุณเห็นว่ามันไม่สามารถใช้งานได้ใน Windows:
F:\test\impossible>dir
Volume in drive F is Expansion
Volume Serial Number is 3656-BB63
Directory of F:\test\impossible
10/08/2016 21:07 <DIR> .
10/08/2016 21:07 <DIR> ..
10/08/2016 21:03 0
10/08/2016 21:02 0
10/08/2016 21:07 0
10/08/2016 21:02 0
4 File(s) 0 bytes
2 Dir(s) 1,772,601,536,512 bytes free