سؤال

أنا لا أسأل عن العامة النحوية قواعد أسماء الملفات.أعني gotchas أن القفز من أي مكان لدغة لك.على سبيل المثال ، في محاولة اسم ملف "COM<n>"على ويندوز ؟

هل كانت مفيدة؟

المحلول

من: http://www.grouplogic.com/knowledge/index.cfm/fuseaction/view_Info/docID/111.

الأحرف التالية غير صحيحة مثل أسماء الملفات أو المجلدات في ويندوز باستخدام NTFS: / ? < > \ : * | " و أي حرف يمكنك كتابة مع المفتاح Ctrl.

بالإضافة إلى ما سبق أحرف غير قانونية الإقحام ^ كما لا يجوز تحت أنظمة التشغيل ويندوز باستخدام نظام الملفات FAT.

تحت Windows باستخدام نظام الملفات FAT أسماء الملفات والمجلدات قد يكون ما يصل إلى 255 حرفا.

تحت Windows باستخدام نظام الملفات NTFS أسماء الملفات والمجلدات قد يكون ما يصل إلى 256 حرفا.

تحت نافذة طول مسار كامل في كلا النظامين هو 260 حرفا.

وبالإضافة إلى هذه الشخصيات الاتفاقيات التالية هي أيضا غير قانونية:

  • وضع مسافة في نهاية الاسم
  • وضع نقطة في نهاية الاسم

الملف التالي أسماء محفوظة أيضا تحت ويندوز:

  • aux,
  • com1,
  • com2,
  • ...
  • com9,
  • lpt1,
  • lpt2,
  • ...
  • lpt9,
  • con,
  • nul,
  • prn

نصائح أخرى

وصف كامل القانونية وغير القانونية أسماء الملفات على ويندوز: http://msdn.microsoft.com/en-us/library/aa365247.aspx

كما قال آخرون ، أسماء الأجهزة مثل COM1 لا ممكن أسماء الملفات تحت ويندوز لأنها محفوظة الأجهزة.

ومع ذلك ، هناك أسلوب الهروب إلى إنشاء والوصول إلى الملفات مع هذه الأسماء المحجوزة ، على سبيل المثال ، هذا الأمر سيتم توجيه الإخراج من ver الأوامر في ملف يسمى COM1:

ver > "\\?\C:\Users\username\COM1"

الآن سيكون لديك ملف يسمى COM1 أن 99% من البرامج لن تكون قادرة على فتح ، وربما تجميد إذا كنت تحاول الوصول إليها.

ها هي مايكروسوفت المادة هذا يفسر كيف أن هذا الملف "مساحة" يعمل.في الأساس فإنه يقول ويندوز لا تفعل أي معالجة سلسلة حول النص تمر مباشرة من خلال نظام الملفات.هذه الخدعة يمكن أن تستخدم أيضا للعمل مع مسارات أطول من 260 حرفا.

صعبة Unix مسكتك عندما كنت لا تعرف:

الملفات التي تبدأ مع - أو-قانونية ولكن الألم في بعقب العمل مع العديد من أدوات سطر الأوامر أعتقد أنك تقدم الخيارات لهم.

العديد من هذه الأدوات لها علامة خاصة "--" للإشارة إلى نهاية الخيارات:

gzip -9vf -- -mydashedfilename

دفعة::الملفات قابلية دليل لديها الكثير من المعلومات الجيدة.

حسنا, بالنسبة MSDOS/ويندوز ، NUL, PRN, LPT<n> و يخدع.حتى أنها تسبب مشاكل إذا ما استخدمت مع التمديد:"NUL.TXT"

إلا إذا كنت لمس خاصة الدلائل فقط غير قانونية أسماء على لينكس هي '.'و '..'.أي اسم آخر هو ممكن ، على الرغم من أن الحصول على بعض منهم من قذيفة يتطلب استخدام تسلسلات الهروب.

تحرير:كما فينكو Vrsalovic قال الملفات التي تبدأ مع '-'و '--'ألم من قذيفة ، منذ تلك تسلسل الأحرف يتم تفسير من قبل التطبيق ، وليس قذيفة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top