5 способов перемещения файлов в папку с помощью скрипта Google Apps

Google Apps Script — это мощный язык сценариев, который позволяет автоматизировать задачи и расширять функциональность различных сервисов Google, включая Google Диск. В этой статье мы рассмотрим несколько способов перемещения файлов в папку с помощью скрипта Google Apps, а также приведем примеры кода для каждого метода.

Метод 1: использование метода moveTo()
Самый простой способ переместить файл в папку на Google Диске — использовать метод moveTo(). Вот пример:

function moveFileToFolder(fileId, folderId) {
  var file = DriveApp.getFileById(fileId);
  var folder = DriveApp.getFolderById(folderId);
  folder.createFile(file.getBlob());
  file.setTrashed(true);
}

Метод 2: использование методов addFile() и RemoveFile()
Вы также можете переместить файл в папку, добавив его в нужную папку и удалив из текущей родительской папки. Вот пример:

function moveFileToFolder(fileId, folderId) {
  var file = DriveApp.getFileById(fileId);
  var folder = DriveApp.getFolderById(folderId);

  folder.addFile(file);
  var parents = file.getParents();
  while (parents.hasNext()) {
    var parent = parents.next();
    if (parent.getId() !== folderId) {
      parent.removeFile(file);
    }
  }
}

Метод 3: Использование метода setParent()
Метод setParent()позволяет напрямую установить родительскую папку файла. Вот пример:

function moveFileToFolder(fileId, folderId) {
  var file = DriveApp.getFileById(fileId);
  var folder = DriveApp.getFolderById(folderId);
  file.setParent(folder);
}

Метод 4: использование службы Advanced Drive
Вы также можете использовать службу Advanced Drive для перемещения файла в папку. Вот пример:

function moveFileToFolder(fileId, folderId) {
  var file = Drive.Files.get(fileId);
  file.parents = [{id: folderId}];
  Drive.Files.update(file, fileId);
}

Метод 5. Использование Drive API
Если вы предпочитаете работать напрямую с Drive API, вы можете использовать метод Files.update()для перемещения файла в папку. Вот пример:

function moveFileToFolder(fileId, folderId) {
  var file = Drive.Files.get(fileId);
  file.parents = [{id: folderId}];
  Drive.Files.update(file, fileId);
}

Это пять различных методов, которые можно использовать для перемещения файлов в папку с помощью скрипта Google Apps. В зависимости от ваших конкретных потребностей и предпочтений вы можете выбрать метод, который наилучшим образом соответствует вашим требованиям. Автоматизация задач управления файлами на Google Диске поможет вам сэкономить время и оптимизировать рабочий процесс.