تقنية

mkdir في ZIP: هل mode تستبدل سمات ZipInfo؟

سمات الكائن لا يستبدلها mode
تفسير توضيحي [1] [2]

mkdir في ZIP تتجاهل mode مع ZipInfo هنا. [1] [2]

الخلاصة السريعة

لا؛ تعتمد السمات المعيّنة في الكائن. [1] [2]

  • كائن ZipInfo لاسم canopy/. [1] [2]
  • بتاته المعيّنة 0o755. [1] [2]
  • mode=0o700 لا تستبدلها. [1] [2]
  • الاسم النصي يستخدم 0o700. [1] [2]
  • نفحص سمات الأرشيف فقط. [1] [2]
  • 3.12.14؛ ذاكرة بلا استخراج. [1] [2]

المثال

from io import BytesIO
from zipfile import ZipFile,ZipInfo
buf=BytesIO()
info=ZipInfo("canopy/")
info.CRC=0
info.external_attr=(0o40755<<16)|0x10
with ZipFile(buf,"w") as z:
 z.mkdir(info,mode=0o700)
 print(oct((z.getinfo("canopy/").external_attr>>16)&0o777))

[1] [2]

نوع المدخل

النتيجة: 0o755. فرع الكائن يحتفظ بسماته؛ فرع الاسم النصي يبني السمات من mode. [1] [2]

الاسم النصي يستخدم mode
تفسير توضيحي [1] [2]

تحكم وحدود

اسم canopy/ النصي مع mode=0o700 يعطي 0o700. إعادة فتح الأرشيف تحفظ سمات الكائن. mkdir تغير حقولًا أخرى؛ لا نقول إن الكائن كله ثابت. لا اختبار صلاحيات نظام أو استخراج. [1] [2]

المراجع

  1. Python 3.12: mkdir input dispatch
  2. CPython 3.12.14: mkdir mode dispatch
  3. موضوع تك: لغة بايثون — مفردات
  4. موضوع تك: تطبيقات بايثون — مفردات

للتوسع: بحث عن لغات البرمجة

أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.