نقل الملفات والمجلدات إلى المهملات أو حذفها

يمكنك إزالة ملفات ومجلدات Google Drive من "ملفاتي" ومساحات التخزين السحابي المشتركة. لديك خياران للقيام بذلك: المهملات أو الحذف.

يمكنك نقل الملفات والمجلدات إلى المهملات ثم استعادتها (خلال 30 يومًا من نقلها إلى المهملات). يؤدي حذف الملفات والمجلدات إلى إزالتها نهائيًا من Drive. إذا نقلت عدة ملفات أو مجلدات إلى المهملات أو استعادتها أو حذفتها نهائيًا في آنٍ واحد، فقد يستغرق الأمر بعض الوقت حتى تلاحظ التغييرات.

يوضّح هذا الدليل كيفية التخلص من الملفات في Drive.

تحوَّل إلى قمامة

لإزالة ملفات Drive، يمكنك نقلها إلى المهملات. يتم حذف الملفات الموجودة في المهملات تلقائيًا بعد 30 يومًا. يمكنك استعادة الملفات من المهملات قبل فترة 30 يومًا.

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

لإثبات ملكيتك للملف، استدعِ الإجراء files.get باستخدام fileId وضبط المَعلمة fields على الحقل المنطقي ownedByMe. لا تتم تعبئة الحقل ownedByMe للملفات في مساحات التخزين السحابي المشتركة لأنها مملوكة لمساحة التخزين السحابي المشتركة، وليس للمستخدمين الفرديين. لمزيد من المعلومات حول عرض الحقول باستخدام المعلَمة fields، يمكنك الاطّلاع على إرجاع حقول محددة لملف.

إذا لم تكن مالك الملف ولكنك لا تزال تريد نسخة من الملف الذي تم نقله إلى المهملات، يمكنك تنفيذ أحد الإجراءات التالية:

  • أنشئ نسخة من الملف.
  • تواصَل مع مالك الملف واطلب منه استعادته من المهملات.

نقل ملف إلى المهملات

لنقل ملف إلى المهملات، استخدِم طريقة files.update واضبط الحقل trashed على True. لنقل ملف مساحة تخزين سحابي مشتركة إلى المهملات، عليك أيضًا ضبط معلَمة طلب البحث supportsAllDrives على True. لمزيد من المعلومات، يُرجى الاطّلاع على تنفيذ دعم مساحات التخزين السحابي المشتركة.

إذا كانت الاستجابة ناجحة، يحتوي نص الاستجابة على مثيل لمورد الملفات.

يوضّح نموذج الرمز البرمجي التالي كيفية استخدام fileId لوضع علامة على الملف بأنّه تم نقله إلى المهملات:

Python

body_value = {'trashed': True}

response = drive_service.files().update(fileId="FILE_ID", body=body_value).execute()

Node.js

const body_value = {
  'trashed': True
};

const response = await drive_service.files.update({
      fileId: 'FILE_ID',
      requestBody: body_value,
    });
    return response;

استبدل FILE_ID بـ fileId من الملف الذي تريد نقله إلى المهملات.

تحديد خصائص الملف الذي تم نقله إلى المهملات

عند نقل ملف إلى المهملات، يمكنك استرداد سمات files الإضافية. يمكنك استخدام طريقة files.get وتضمين الحقول التالية في معلَمة fields. لمزيد من المعلومات، راجِع الحقول الخاصة بإرجاع ملف.

يتم ملء الحقول التالية لجميع الملفات:

  • trashed: تحدّد هذه السمة ما إذا تم نقل الملف إلى المهملات، إما بشكل صريح أو من مجلد رئيسي تم نقله إلى المهملات. ملاحظة: عند استخدام trashed مع الطريقة files.update لضبط حالة الملف، تسترد الطريقة files.get حالة الملف.
  • explicitlyTrashed: تحدّد هذه السمة ما إذا كان قد تم نقل الملف إلى المهملات بشكل متكرر من المجلد الرئيسي.

تتم تعبئة الحقول التالية فقط للملفات الموجودة في مساحة التخزين السحابي المشتركة:

  • trashedTime: الوقت الذي تم فيه وضع العنصر في المهملات بتنسيق RFC 3339 التاريخ والوقت. إذا كنت تستخدم الإصدار السابق من Drive API v2، سيُسمّى هذا الحقل "trashedDate".
  • trashingUser: المستخدم الذي نقل الملف إلى المهملات إذا تم نقله إلى المهملات صراحةً

استرداد ملف من المهملات

لاسترداد ملف من المهملات، استخدِم طريقة files.update واضبط الحقل trashed على False. لاستعادة ملف مساحة تخزين سحابي مشتركة من المهملات، عليك أيضًا ضبط معلَمة طلب البحث supportsAllDrives على True. لمزيد من المعلومات، يُرجى الاطّلاع على تنفيذ دعم مساحات التخزين السحابي المشتركة.

إذا كانت الاستجابة ناجحة، يحتوي نص الاستجابة على مثيل لمورد الملفات.

يوضّح نموذج الرمز البرمجي التالي كيفية استخدام fileId لوضع علامة على الملف بأنّه تمت إزالته من المهملات:

Python

body_value = {'trashed': False}

response = drive_service.files().update(fileId="FILE_ID", body=body_value).execute()

Node.js

const body_value = {
  'trashed': False
};

const response = await drive_service.files.update({
      fileId: 'FILE_ID',
      requestBody: body_value,
    });
    return response;

استبدل FILE_ID بـ fileId من الملف الذي تريد إزالته من المهملات.

إفراغ المهملات

يمكنك حذف جميع ملفات Drive التي نقلها المستخدم إلى المهملات نهائيًا باستخدام طريقة files.emptyTrash. لإفراغ المهملات في مساحة تخزين سحابي مشتركة، عليك أيضًا ضبط معلَمة طلب البحث driveId على معرّف مساحة التخزين السحابي المشتركة.

إذا كانت ناجحة، يحتوي نص الاستجابة على مثيل فارغ.

يعرض نموذج الرمز البرمجي التالي كيفية استخدام fileId لحذف جميع الملفات في المهملات:

Python

response = drive_service.files().emptyTrash().execute()

Node.js

 const response = await drive_service.files.emptyTrash({
    });
    return response;

حذف

يمكنك حذف ملف Drive نهائيًا بدون نقله إلى المهملات. بعد حذف ملف، يفقد أي شخص شاركت الملف معه إمكانية الوصول إليه. إذا أردت أن يحتفظ المستخدمون الآخرون بإمكانية الوصول إلى الملف، يمكنك نقل الملكية إلى شخص آخر قبل الحذف.

لحذف ملف مساحة تخزين سحابي مشتركة، يجب أن يكون لدى المستخدم role=organizer في المجلد الرئيسي. إذا كنت تحذف مجلدًا، سيتم أيضًا حذف جميع الحسابات التابعة التي يملكها المستخدم. لمزيد من المعلومات، راجع الأذونات.

لحذف ملف يملكه مستخدم نهائيًا بدون نقله إلى المهملات، استخدِم طريقة files.delete. لحذف ملف مساحة تخزين سحابي مشتركة، عليك أيضًا ضبط معلَمة طلب البحث supportsAllDrives على True. لمزيد من المعلومات، يُرجى الاطّلاع على تنفيذ مساحات التخزين السحابي المشتركة.

إذا كانت ناجحة، يحتوي نص الاستجابة على مثيل فارغ.

يعرض نموذج الرمز البرمجي التالي كيفية استخدام fileId لحذف الملف:

Python

response = drive_service.files().delete(fileId="FILE_ID").execute()

Node.js

 const response = await drive_service.files.delete({
      fileId: 'FILE_ID'
    });
    return response;

استبدِل FILE_ID بالرمز fileId للملف الذي تريد حذفه.

الأذونات

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

عملية مسموح بها owner organizer fileOrganizer writer commenter reader
نقل الملفات والمجلدات إلى المهملات
استرداد الملفات والمجلدات من المهملات
إفراغ المهملات
حذف ملف أو مجلد نهائيًا
حذف الملفات والمجلدات في مساحة تخزين سحابي مشتركة [*]

الإمكانات

يحتوي مورد files على مجموعة من حقول capabilities المنطقية المستخدَمة للإشارة إلى ما إذا كان من الممكن تنفيذ إجراء على ملف أم لا.

وللتحقّق من الإمكانات، يمكنك طلب الإجراء files.get مع ضبط المَعلمة fileId وضبط المَعلمة fields على الحقل capabilities. لمزيد من المعلومات حول عرض الحقول باستخدام المَعلمة fields، يمكنك الاطّلاع على الحقول الخاصة بإرجاع ملف.

يتم ملء الحقول التالية لجميع الملفات:

  • capabilities.canTrash: ما إذا كان يمكن للمستخدم الحالي نقل هذا الملف إلى المهملات
  • capabilities.canUntrash: ما إذا كان بإمكان المستخدم الحالي استعادة هذا الملف من المهملات.
  • capabilities.canDelete: ما إذا كان يمكن للمستخدم الحالي حذف هذا الملف
  • capabilities.canRemoveChildren: ما إذا كان يمكن للمستخدم الحالي إزالة الأطفال من هذا المجلد. يكون هذا خطأ عندما لا يكون العنصر مجلدًا.

تتم تعبئة الحقول التالية فقط للملفات الموجودة في مساحة التخزين السحابي المشتركة:

  • capabilities.canTrashChildren: ما إذا كان المستخدم الحالي يمكنه نقل العناصر الفرعية لهذا المجلد إلى المهملات. يكون هذا خطأ عندما لا يكون العنصر مجلدًا.
  • capabilities.canDeleteChildren: ما إذا كان يمكن للمستخدم الحالي حذف عناصر هذا المجلد الفرعية. يكون هذا خطأ عندما لا يكون العنصر مجلدًا.