มีอักขระที่ไม่ถูกต้องสำหรับชื่อไฟล์ ext3 หรือไม่?


9

อักขระใดไม่ถูกต้องสำหรับชื่อไฟล์ ext3 ฉันจินตนาการว่าอย่างน้อย/ก็เป็นตัวละครที่ไม่ถูกต้องและอาจเป็น\0ไปได้ มีรายชื่ออย่างเป็นทางการที่ไหนสักแห่ง?

ฉันไม่แน่ใจว่าจะหาข้อมูลนี้ได้ที่ไหนดังนั้นโปรดบอกฉันว่าคุณพบที่ไหน


ที่น่าสนใจแม้จะมีความยาวอ่าน: Fixing Unix / Linux / POSIX ชื่อไฟล์
หยุดชั่วคราวจนกว่าจะมีการแจ้งให้ทราบต่อไป

คำตอบ:



3

/ ดูเหมือนว่าจะได้รับอนุญาตอย่างน้อยใน ext3 (ตามที่คาดไว้ในทั้งหมด, ext, ext2 & ext3 อย่างน้อย, น่าจะเป็น ext4) - ลองทำสิ่งนี้:

f = 'ทดสอบ / ไฟล์'; echo "ทดสอบ: '$ {f}'"
สำหรับ c ใน touch ll rm; do
eval "$ {c} '$ {f}'"
เสร็จแล้ว

ที่จะสร้าง "ทดสอบ / ไฟล์" สร้างความประหลาดใจให้ฉันด้วย ... มันจะสร้างขึ้นแสดงด้วยคำสั่ง ls และลบออกด้วย rm

คุณสามารถพิมพ์ลงบนหนึ่งบรรทัดใน bash:

$ f = 'test / file'; สำหรับ c in touch ll rm; ทำการ eval "$ {c} '$ {f}'";

ดังนั้น / ดูเหมือนว่าจะอนุญาตให้ใช้ในชื่อไฟล์ (bizerrely) - อาจมีเครื่องมือมากมายที่อาจสับสนกับ ...


เคล็ดลับยอดเยี่ยมแม้ว่าอาจไม่ได้รับคำแนะนำเกี่ยวกับระบบการผลิต :-)
voretaq7

เอ่อ ... คุณมีไดเรกทอรีที่เรียกว่า 'ทดสอบ' หรือไม่? นั่นจะสร้างความแตกต่าง:touch: cannot touch 'test/file': No such file or directory
MikeyB

แม้ว่าจะมีประโยชน์ในฐานะที่เป็นเรื่องตลกที่จะดึงผู้ช่วยคนหนึ่งของ
Magellan

ไม่มีการจัดการเพียงแค่สร้างไฟล์ชื่อ "test / file" - จะน่าสนใจที่จะลองกับไดเรกทอรีที่มีอยู่ชื่อ test ... มันอาจไม่ได้ทำให้เกิดปัญหาหลังจากทั้งหมด / ในตอนท้ายของชื่อไดเรกทอรีไม่ได้จริงๆ ส่วนหนึ่งของชื่อ ... ดังนั้นฉันจึงนึกภาพออกมาได้ว่าพวกเขาทำงานร่วมกันจริง ๆ ... มันจะดูสับสน แต่ ... หรือคุณหมายถึงคุณลองมันจริงหรือ :)
robsku
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.