Class DriveApp

DriveApp

يتيح هذا الخيار للنصوص البرمجية إنشاء ملفات ومجلدات والعثور عليها وتعديلها في Google Drive. للوصول إلى الملفات أو المجلدات في مساحات التخزين السحابي المشتركة، استخدِم خدمة Drive المتقدِّمة.

// Logs the name of every file in the user's Drive.
var files = DriveApp.getFiles();
while (files.hasNext()) {
  var file = files.next();
  console.log(file.getName());
}

أماكن إقامة

الخاصيةTypeالوصف
AccessAccessتعداد فئات تمثّل فئات المستخدمين الذين يمكنهم الوصول إلى ملف أو مجلد، بالإضافة إلى أي مستخدمين فرديين تم منحهم إذن الوصول صراحةً.
PermissionPermissionتعداد يمثّل الأذونات الممنوحة للمستخدمين الذين يمكنهم الوصول إلى ملف أو مجلد، إلى جانب أي مستخدمين فرديين تم منحهم إذن الوصول صراحةً.

الطُرق

الطريقةنوع الإرجاعوصف قصير
continueFileIterator(continuationToken)FileIteratorاستئناف تكرار الملف باستخدام رمز مميز للتكرار من مكرّر سابق
continueFolderIterator(continuationToken)FolderIteratorاستئناف تكرار المجلد باستخدام رمز مميّز لاستمرارية العرض من مكرّر سابق
createFile(blob)Fileيُنشئ ملفًا في جذر Drive على المستخدم من Blob من البيانات العشوائية.
createFile(name, content)Fileيُنشئ ملفًا نصيًا في جذر Drive Drive للمستخدم بالاسم ومحتوياته.
createFile(name, content, mimeType)Fileيُنشئ ملفًا في جذر Drive Drive للمستخدم مع ذكر الاسم والمحتوى ونوع MIME المحدّد.
createFolder(name)Folderينشئ مجلدًا في جذر Drive Drive للمستخدم بالاسم المحدد.
createShortcut(targetId)Fileينشئ اختصارًا لرقم تعريف عنصر Drive المقدَّم ويعرضه.
createShortcutForTargetIdAndResourceKey(targetId, targetResourceKey)Fileينشئ اختصارًا لمعرّف عنصر Drive ومفتاح المورد المتوفّرين ويعرضهما.
enforceSingleParent(value)voidتعمل هذه السياسة على تفعيل أو فرض سلوك محدد على أحد الوالدَين لجميع المكالمات التي تؤثر في عناصر العنصر الرئيسي.
getFileById(id)Fileالحصول على الملف باستخدام رقم التعريف المحدّد
getFileByIdAndResourceKey(id, resourceKey)Fileللحصول على الملف باستخدام رقم التعريف ومفتاح المفتاح المحدَّدين
getFiles()FileIteratorالحصول على مجموعة من جميع الملفات في Drive للمستخدم.
getFilesByName(name)FileIteratorالحصول على مجموعة من جميع الملفات في Drive للمستخدم الذي يحمل الاسم نفسه
getFilesByType(mimeType)FileIteratorالحصول على مجموعة من جميع الملفات في Drive للمستخدم الذي لديه نوع MIME المحدّد.
getFolderById(id)Folderالحصول على المجلد الذي يحمل رقم التعريف المحدّد
getFolderByIdAndResourceKey(id, resourceKey)Folderللحصول على المجلد الذي يحتوي على رقم التعريف ومفتاح المفتاح المحدَّدين
getFolders()FolderIteratorالحصول على مجموعة من جميع المجلدات في Drive للمستخدم.
getFoldersByName(name)FolderIteratorالحصول على مجموعة من جميع المجلدات في Drive للمستخدم الذي يحمل الاسم نفسه
getRootFolder()Folderيحصل على المجلد في جذر Drive للمستخدم.
getStorageLimit()Integerالحصول على عدد وحدات البايت التي يُسمح للمستخدم بتخزينها في Drive.
getStorageUsed()Integerالحصول على عدد وحدات البايت التي يخزّنها المستخدم حاليًا في Drive.
getTrashedFiles()FileIteratorيحصل على مجموعة من جميع الملفات في مهملات Drive للمستخدم.
getTrashedFolders()FolderIteratorالحصول على مجموعة من جميع المجلدات في مهملات Drive على المستخدم
searchFiles(params)FileIteratorالحصول على مجموعة من جميع الملفات في Drive للمستخدم التي تتطابق مع معايير البحث
searchFolders(params)FolderIteratorالحصول على مجموعة من جميع المجلدات في Drive للمستخدم التي تتوافق مع معايير البحث

المستندات التفصيلية

continueFileIterator(continuationToken)

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

المعلّمات

الاسمالنوعالوصف
continuationTokenStringرمز مميّز لاستمرارية العرض من مكرّر ملف سابق

رحلة العودة

FileIterator: مجموعة من الملفات التي ظلت في برنامج التكرار السابق عند إنشاء الرمز المميّز للاستمرار.


continueFolderIterator(continuationToken)

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

المعلّمات

الاسمالنوعالوصف
continuationTokenStringرمز مميّز لاستمرارية العرض من مكرّر مجلد سابق

رحلة العودة

FolderIterator: مجموعة من المجلدات التي ظلت في برنامج التكرار السابق عند إنشاء الرمز المميّز للمتابعة.


createFile(blob)

يُنشئ ملفًا في جذر Drive على المستخدم من Blob من البيانات العشوائية.

// Create an image file in Google Drive using the Maps service.
var blob = Maps.newStaticMap().setCenter('76 9th Avenue, New York NY').getBlob();
DriveApp.createFile(blob);

المعلّمات

الاسمالنوعالوصف
blobBlobSourceبيانات الملف الجديد.

رحلة العودة

File - الملف الجديد

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive

createFile(name, content)

يُنشئ ملفًا نصيًا في جذر Drive Drive للمستخدم بالاسم ومحتوياته. يعرض هذا العرض استثناءًا إذا كان حجم content أكبر من 50 ميغابايت.

// Create a text file with the content "Hello, world!"
DriveApp.createFile('New Text File', 'Hello, world!');

المعلّمات

الاسمالنوعالوصف
nameStringاسم الملف الجديد.
contentStringمحتوى الملف الجديد.

رحلة العودة

File - الملف الجديد

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive

createFile(name, content, mimeType)

يُنشئ ملفًا في جذر Drive Drive للمستخدم مع ذكر الاسم والمحتوى ونوع MIME المحدّد. ينطبق هذا الاستثناء إذا كان حجم content أكبر من 10 ميغابايت.

// Create an HTML file with the content "Hello, world!"
DriveApp.createFile('New HTML File', '<b>Hello, world!</b>', MimeType.HTML);

المعلّمات

الاسمالنوعالوصف
nameStringاسم الملف الجديد.
contentStringمحتوى الملف الجديد.
mimeTypeStringنوع MIME للملف الجديد.

رحلة العودة

File - الملف الجديد

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive

createFolder(name)

ينشئ مجلدًا في جذر Drive Drive للمستخدم بالاسم المحدد.

المعلّمات

الاسمالنوعالوصف
nameStringاسم المجلد الجديد.

رحلة العودة

Folder - المجلد الجديد

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive

createShortcut(targetId)

ينشئ اختصارًا لرقم تعريف عنصر Drive المقدَّم ويعرضه.

المعلّمات

الاسمالنوعالوصف
targetIdStringرقم تعريف الملف أو المجلد الهدف

رحلة العودة

File - الاختصار الجديد.

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive

createShortcutForTargetIdAndResourceKey(targetId, targetResourceKey)

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

المعلّمات

الاسمالنوعالوصف
targetIdStringرقم تعريف الملف أو المجلد الهدف
targetResourceKeyStringمفتاح المورد للملف أو المجلد الهدف.

رحلة العودة

File - الاختصار الجديد.

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive

enforceSingleParent(value)

تعمل هذه السياسة على تفعيل أو فرض سلوك محدد على أحد الوالدَين لجميع المكالمات التي تؤثر في عناصر العنصر الرئيسي.

يمكنك الاطّلاع على مدونة تبسيط بنية مجلدات Google Drive ونماذج المشاركة للحصول على مزيد من التفاصيل.

المعلّمات

الاسمالنوعالوصف
valueBooleanالحالة الجديدة لعلامة توفر السياسة SingleParent.

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive

getFileById(id)

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

// Gets a list of all files in Google Drive with the given name.
// TODO(developer): Replace 'Test' with your file name.
const files = DriveApp.getFilesByName('Test');

if (files.hasNext()) {
  // Gets the ID of each file in the list.
  const fileId = files.next().getId();

  // Gets the file name using its ID and logs it to the console.
  console.log(DriveApp.getFileById(fileId).getName());
}

المعلّمات

الاسمالنوعالوصف
idStringرقم تعريف الملف.

رحلة العودة

File: الملف برقم التعريف المحدّد

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFileByIdAndResourceKey(id, resourceKey)

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

طرح استثناء نص برمجي إذا لم يكن الملف متوفّرًا أو لم يكن لدى المستخدم إذن بالوصول إليه.

// Gets a list of all files in Drive with the given name.
// TODO(developer): Replace 'Test' with your file name.
const files = DriveApp.getFilesByName('Test');
if (files.hasNext()) {

  // Gets the first file in the list.
  const file = files.next();

  // Gets the ID and resource key.
  const key = file.getResourceKey();
  const id = file.getId();

  // Logs the file name to the console using its ID and resource key.
  console.log(DriveApp.getFileByIdAndResourceKey(id, key).getName());
}

المعلّمات

الاسمالنوعالوصف
idStringرقم تعريف الملف.
resourceKeyStringمفتاح المورد للمجلد.

رحلة العودة

File: الملف برقم التعريف المحدّد

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFiles()

الحصول على مجموعة من جميع الملفات في Drive للمستخدم.

رحلة العودة

FileIterator: مجموعة من جميع الملفات في Drive للمستخدم.

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFilesByName(name)

الحصول على مجموعة من جميع الملفات في Drive للمستخدم الذي يحمل الاسم نفسه

المعلّمات

الاسمالنوعالوصف
nameStringاسم الملفات التي سيتم العثور عليها.

رحلة العودة

FileIterator: مجموعة من جميع الملفات في Drive للمستخدم التي تحمل الاسم المُعطى.

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFilesByType(mimeType)

الحصول على مجموعة من جميع الملفات في Drive للمستخدم الذي لديه نوع MIME المحدّد.

المعلّمات

الاسمالنوعالوصف
mimeTypeStringنوع MIME للملفات التي يتم العثور عليها.

رحلة العودة

FileIterator: مجموعة من جميع الملفات في Drive للمستخدم التي تتضمن نوع MIME المحدّد.

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFolderById(id)

الحصول على المجلد الذي يحمل رقم التعريف المحدّد عرض استثناء للنص البرمجي إذا لم يكن المجلد متوفرًا أو إذا لم يكن لدى المستخدم الإذن بالوصول إليه

المعلّمات

الاسمالنوعالوصف
idStringرقم تعريف المجلد.

رحلة العودة

Folder: المجلد الذي يحتوي على المعرّف المحدّد

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFolderByIdAndResourceKey(id, resourceKey)

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

طرح استثناء للنص البرمجي إذا لم يكن المجلد متوفرًا أو لم يكن لدى المستخدم الإذن بالوصول إليه.

المعلّمات

الاسمالنوعالوصف
idStringرقم تعريف المجلد.
resourceKeyStringمفتاح المورد للمجلد.

رحلة العودة

Folder: المجلد الذي يحتوي على المعرّف المحدّد

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFolders()

الحصول على مجموعة من جميع المجلدات في Drive للمستخدم.

رحلة العودة

FolderIterator: مجموعة من جميع المجلدات في Drive للمستخدم.

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFoldersByName(name)

الحصول على مجموعة من جميع المجلدات في Drive للمستخدم الذي يحمل الاسم نفسه

المعلّمات

الاسمالنوعالوصف
nameStringاسم المجلدات التي سيتم العثور عليها.

رحلة العودة

FolderIterator: مجموعة من جميع المجلدات في Drive للمستخدم التي تحمل الاسم المُعطى.

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getRootFolder()

يحصل على المجلد في جذر Drive للمستخدم.

// Gets the user's My Drive folder and logs its name to the console.
console.log(DriveApp.getRootFolder().getName());

// Logs the Drive owner's name to the console.
console.log(DriveApp.getRootFolder().getOwner().getName());

رحلة العودة

Folder - المجلد الجذر في Drive للمستخدم.

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getStorageLimit()

الحصول على عدد وحدات البايت التي يُسمح للمستخدم بتخزينها في Drive.

// Gets the number of bytes the user can store in Drive and logs it to the console.
console.log(DriveApp.getStorageLimit());

رحلة العودة

Integer - عدد وحدات البايت التي يُسمح للمستخدم بتخزينها في Drive.

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getStorageUsed()

الحصول على عدد وحدات البايت التي يخزّنها المستخدم حاليًا في Drive.

// Gets the number of bytes the user is currently storing in Drive and logs it to the console.
console.log(DriveApp.getStorageUsed());

رحلة العودة

Integer — عدد وحدات البايت التي يخزّنها المستخدم حاليًا في Drive.

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getTrashedFiles()

يحصل على مجموعة من جميع الملفات في مهملات Drive للمستخدم.

// Gets a list of all the files in the trash of the user's Drive.
const trashFiles = DriveApp.getTrashedFiles();

// Logs the trash file names to the console.
while (trashFiles.hasNext()) {
  const file = trashFiles.next();
  console.log(file.getName());
}

رحلة العودة

FileIterator: مجموعة من الملفات في "المهملات"

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getTrashedFolders()

الحصول على مجموعة من جميع المجلدات في مهملات Drive على المستخدم

// Gets a collection of all the folders in the trash of the user's Drive.
const trashFolders = DriveApp.getTrashedFolders();

// Logs the trash folder names to the console.
while (trashFolders.hasNext()) {
  const folder = trashFolders.next();
  console.log(folder.getName());
}

رحلة العودة

FolderIterator: مجموعة من المجلدات في "المهملات".

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

searchFiles(params)

الحصول على مجموعة من جميع الملفات في Drive للمستخدم التي تتطابق مع معايير البحث تتوفر معايير البحث بالتفصيل في مستندات حزمة تطوير البرامج (SDK) لخدمة Google Drive. تجدر الإشارة إلى أن خدمة Drive تستخدم الإصدار 2 من Drive API وأنّ بعض حقول طلبات البحث تختلف عن الإصدار 3. راجِع الاختلافات في الحقول بين الإصدار 2 والإصدار 3.

الوسيطة params هي سلسلة طلب بحث يمكن أن تحتوي على قيم السلاسل، لذا عليك الانتباه لتجنب علامات الاقتباس بشكل صحيح (على سبيل المثال "title contains 'Gulliver\\'s Travels'" أو 'title contains "Gulliver\'s Travels"').

// Logs the name of every file in the user's Drive that modified after February 28,
// 2022 whose name contains "untitled.""
var files = DriveApp.searchFiles(
    'modifiedDate > "2022-02-28" and title contains "untitled"');
while (files.hasNext()) {
  var file = files.next();
  console.log(file.getName());
}

المعلّمات

الاسمالنوعالوصف
paramsStringمعايير البحث، كما هو موضح في مستندات حزمة تطوير البرامج (SDK) لخدمة Google Drive.

رحلة العودة

FileIterator : مجموعة من جميع الملفات في Drive للمستخدم التي تتطابق مع معايير البحث.

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

searchFolders(params)

الحصول على مجموعة من جميع المجلدات في Drive للمستخدم التي تتوافق مع معايير البحث تتوفر معايير البحث بالتفصيل في مستندات حزمة تطوير البرامج (SDK) لخدمة Google Drive. تجدر الإشارة إلى أن خدمة Drive تستخدم الإصدار 2 من Drive API وأنّ بعض حقول طلبات البحث تختلف عن الإصدار 3. راجِع الاختلافات في الحقول بين الإصدار 2 والإصدار 3.

الوسيطة params هي سلسلة طلب بحث يمكن أن تحتوي على قيم السلاسل، لذا عليك الانتباه لتجنب علامات الاقتباس بشكل صحيح (على سبيل المثال "title contains 'Gulliver\\'s Travels'" أو 'title contains "Gulliver\'s Travels"').

// Logs the name of every folder in the user's Drive that you own and is starred.
var folders = DriveApp.searchFolders('starred = true and "me" in owners');
while (folders.hasNext()) {
  var folder = folders.next();
  console.log(folder.getName());
}

المعلّمات

الاسمالنوعالوصف
paramsStringمعايير البحث، كما هو موضح في مستندات حزمة تطوير البرامج (SDK) لخدمة Google Drive.

رحلة العودة

FolderIterator - مجموعة من جميع المجلدات في Drive التي تطابق معايير البحث.

التفويض

إنّ النصوص البرمجية التي تستخدم هذه الطريقة تتطلب تفويضًا باستخدام واحد أو أكثر من النطاقات التالية:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

طرق متوقّفة نهائيًا