يمكنك إزالة ملفات ومجلدات 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 2، يُطلق على هذا الحقل اسمtrashedDate
.-
trashingUser
: إذا تم نقل الملف إلى المهملات بشكل صريح، سيظهر المستخدم الذي نقل الملف إلى المهملات.
استرداد ملف من المهملات
لاسترداد ملف من المهملات، استخدِم الطريقة
files.update
واضبط الحقل
trashed
على False
. لاستعادة ملف من المهملات في مساحة تخزين سحابي مشتركة، عليك أيضًا ضبط مَعلمة طلب البحث supportsAllDrives
على True
. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة تنفيذ ميزة مساحة التخزين السحابي المشتركة.
إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على مثال لمورد الملفات.
كيفية نقل البيانات إلى الإصدار 3 من Drive APIيوضّح نموذج الرمز البرمجي التالي كيفية استخدام 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
: تشير إلى ما إذا كان بإمكان المستخدم الحالي حذف العناصر الفرعية لهذا المجلد. تكون هذه القيمة خطأ عندما لا يكون العنصر مجلدًا.
الحدود القصوى المسموح بها للملفات والمجلدات
تتضمّن ملفات ومجلدات Drive، بالإضافة إلى مجلدات مساحة التخزين السحابي المشتركة، بعض حدود التخزين.
بشكل عام، بعد بلوغ الحدّ الأقصى لعدد العناصر، الطريقة الوحيدة لتوفير مساحة أكبر هي حذف العناصر نهائيًا أو استخدام حساب مختلف. لا يكفي نقل الملفات إلى المهملات لإخلاء مساحة.
لمزيد من المعلومات حول حدود الملفات والمجلدات، يمكنك الاطّلاع على ما يلي:
مواضيع ذات صلة
- حذف الملفات في Google Drive
- الاختلافات بين واجهة برمجة التطبيقات لمساحات التخزين السحابي المشتركة وواجهة برمجة التطبيقات لـ "ملفاتي"
- الأدوار والأذونات