Class File

檔案

Google 雲端硬碟中的檔案。你可以前往「DriveApp」存取或建立檔案。

// Trash every untitled spreadsheet that hasn't been updated in a week.
var files = DriveApp.getFilesByName('Untitled spreadsheet');
while (files.hasNext()) {
  var file = files.next();
  if (new Date() - file.getLastUpdated() > 7 * 24 * 60 * 60 * 1000) {
    file.setTrashed(true);
  }
}

方法

方法傳回類型簡短說明
addCommenter(emailAddress)File將特定使用者新增至 File 的加註者清單。
addCommenter(user)File將特定使用者新增至 File 的加註者清單。
addCommenters(emailAddresses)File將指定的使用者陣列新增至 File 的加註者清單。
addEditor(emailAddress)File將特定使用者新增至 File 的編輯者清單。
addEditor(user)File將特定使用者新增至 File 的編輯者清單。
addEditors(emailAddresses)File將指定的使用者陣列新增至 File 的編輯者清單。
addViewer(emailAddress)File將特定使用者新增至 File 的檢視者清單。
addViewer(user)File將特定使用者新增至 File 的檢視者清單。
addViewers(emailAddresses)File將指定的使用者陣列新增至 File 的檢視者清單。
getAccess(email)Permission取得授予指定使用者的權限。
getAccess(user)Permission取得授予指定使用者的權限。
getAs(contentType)Blob以 blob 的形式傳回這個物件中的資料,做為轉換成指定內容類型的 blob。
getBlob()Blob以 blob 的形式傳回這個物件中的資料。
getDateCreated()Date取得 File 的建立日期。
getDescription()String取得 File 的說明。
getDownloadUrl()String取得可用於下載檔案的網址。
getEditors()User[]取得這個 File 的編輯者清單。
getId()String取得 File 的 ID。
getLastUpdated()Date取得 File 上次更新日期。
getMimeType()String取得檔案的 MIME 類型。
getName()String取得 File 的名稱。
getOwner()User取得檔案擁有者。
getParents()FolderIterator取得一組資料夾,這些資料夾是 File 的直接父項。
getResourceKey()String取得存取 File 所需的項目所需的資源金鑰 已經透過連結分享。
getSecurityUpdateEligible()Boolean確認這部File是否符合套用安全性更新的 透過連結共用時,需要資源金鑰才能存取。
getSecurityUpdateEnabled()Boolean取得在適當情況下,這個 File 是否需要資源金鑰才能存取 透過連結分享。
getSharingAccess()Access取得有權存取 File 的使用者類別 (除了個別使用者外) 獲得明確授予存取權的使用者。
getSharingPermission()Permission取得權限授予有權存取 File 的使用者。 向任何已明確授予存取權的使用者除外。
getSize()Integer取得在雲端硬碟中儲存 File 的位元組數。
getTargetId()String如果這是捷徑,則傳回其指向的項目 ID。
getTargetMimeType()String如果這是 Shortcut,則傳回其指向的項目 MIME 類型。
getTargetResourceKey()String如果檔案是捷徑,則傳回其指向的項目的資源鍵。
getThumbnail()Blob取得檔案的縮圖;如果沒有縮圖,則取得 null
getUrl()String取得可在 Google 應用程式中開啟 File 的網址,例如: Google 雲端硬碟或文件。
getViewers()User[]取得這個File的檢視者和加註者名單。
isShareableByEditors()Boolean決定擁有File編輯權限的使用者是否可執行以下操作 並與其他使用者共用或變更權限
isStarred()Boolean判斷File是否已在使用者雲端硬碟中加上星號。
isTrashed()Boolean決定 File 是否位於使用者的雲端硬碟垃圾桶中。
makeCopy()File建立檔案副本。
makeCopy(destination)File在目的地目錄中建立檔案副本。
makeCopy(name)File建立檔案副本,並以您提供的名稱命名。
makeCopy(name, destination)File在目的地目錄中建立檔案副本,並以您提供的名稱命名。
moveTo(destination)File將這個項目移至提供的目的地資料夾。
removeCommenter(emailAddress)File將特定使用者從 File 的加註者清單中移除。
removeCommenter(user)File將特定使用者從 File 的加註者清單中移除。
removeEditor(emailAddress)File將特定使用者從 File 的編輯者清單中移除。
removeEditor(user)File將特定使用者從 File 的編輯者清單中移除。
removeViewer(emailAddress)File將特定使用者從 File 的檢視者和加註者清單中移除。
removeViewer(user)File將特定使用者從 File 的檢視者和加註者清單中移除。
revokePermissions(emailAddress)File撤銷已授予特定使用者的 File 存取權。
revokePermissions(user)File撤銷已授予特定使用者的 File 存取權。
setContent(content)File使用指定取代項目覆寫檔案內容。
setDescription(description)File設定 File 的說明。
setName(name)File設定 File 的名稱。
setOwner(emailAddress)File變更 File 的擁有者。
setOwner(user)File變更 File 的擁有者。
setSecurityUpdateEnabled(enabled)File設定 File 在什麼情況下是否需要資源金鑰才能存取 透過連結分享。
setShareableByEditors(shareable)File設定是否允許擁有File編輯權限的使用者可以共用檔案 與其他使用者共用或變更權限
setSharing(accessType, permissionType)File設定可存取 File 的使用者類別及權限 這些使用者除了獲得明確存取權的任何個別使用者外,
setStarred(starred)File設定是否要在使用者雲端硬碟中加上星號 File
setTrashed(trashed)File設定 File 是否位於使用者雲端硬碟的垃圾桶中。

內容詳盡的說明文件

addCommenter(emailAddress)

將特定使用者新增至 File 的加註者清單。如果使用者是 已有列在觀眾名單上,這種方式能把使用者移出觀眾清單。

// Gets a list of all files in Google Drive with the given name.
// TODO(developer): Replace 'cloudysanfrancisco@gmail.com' with the email address that you
// want to add as a commenter.
while (files.hasNext()) {
  const file = files.next();
  email = 'cloudysanfrancisco@gmail.com';
  console.log(file.addCommenter(email));
}

參數

名稱類型說明
emailAddressString要新增的使用者電子郵件地址。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

addCommenter(user)

將特定使用者新增至 File 的加註者清單。如果使用者是 已有列在觀眾名單上,這種方式能把使用者移出觀眾清單。

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

// Adds the active user as a commenter.
while (files.hasNext()) {
  const file = files.next();
  file.addCommenter(Session.getActiveUser());
}

參數

名稱類型說明
userUser代表要新增的使用者。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

addCommenters(emailAddresses)

將指定的使用者陣列新增至 File 的加註者清單。如果有任何 的觀眾,這個方法會將他們推薦給 觀眾。

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

while (files.hasNext()) {
  const file = files.next();
  // TODO(developer): Replace 'cloudysanfrancisco@gmail.com' and
  // 'baklavainthebalkans@gmail.com' with the email addresses to add as commenters.
  const emails = ['cloudysanfrancisco@gmail.com','baklavainthebalkans@gmail.com'];
  console.log(file.addCommenters(emails));
}

參數

名稱類型說明
emailAddressesString[]要新增的使用者電子郵件地址陣列。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

addEditor(emailAddress)

將特定使用者新增至 File 的編輯者清單。如果使用者已 觀眾也會成為觀眾,因此能在觀影迷清單中向他們宣傳。

參數

名稱類型說明
emailAddressString要新增的使用者電子郵件地址。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

addEditor(user)

將特定使用者新增至 File 的編輯者清單。如果使用者已 觀眾也會成為觀眾,因此能在觀影迷清單中向他們宣傳。

參數

名稱類型說明
userUser代表要新增的使用者。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

addEditors(emailAddresses)

將指定的使用者陣列新增至 File 的編輯者清單。如果有任何 觀看清單中的使用者,這種做法是將他們 觀眾。

參數

名稱類型說明
emailAddressesString[]要新增的使用者電子郵件地址陣列。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

addViewer(emailAddress)

將特定使用者新增至 File 的檢視者清單。如果使用者已 在編輯器清單上,這個方法不會有任何作用。

參數

名稱類型說明
emailAddressString要新增的使用者電子郵件地址。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

addViewer(user)

將特定使用者新增至 File 的檢視者清單。如果使用者已 在編輯器清單上,這個方法不會有任何作用。

參數

名稱類型說明
userUser代表要新增的使用者。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

addViewers(emailAddresses)

將指定的使用者陣列新增至 File 的檢視者清單。如果有任何 使用者已在編輯者清單中,這個方法對他們沒有作用。

參數

名稱類型說明
emailAddressesString[]要新增的使用者電子郵件地址陣列。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getAccess(email)

取得授予指定使用者的權限。

參數

名稱類型說明
emailString應檢查其權限的使用者電子郵件地址

回攻員

Permission:授予使用者的權限

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getAccess(user)

取得授予指定使用者的權限。

參數

名稱類型說明
userUser代表應檢查其權限的使用者

回攻員

Permission:授予使用者的權限

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getAs(contentType)

以 blob 的形式傳回這個物件中的資料,做為轉換成指定內容類型的 blob。這個 方法會在檔案名稱中加入適當的副檔名,例如「myfile.pdf」。不過 假設檔案名稱最後一個句點 (如果有) 之後的部分為現有文件 所有應替換的副檔名。因此,「ShoppingList.12.25.2014」變成 「ShoppingList.12.25.pdf」。

如要查看轉換的每日配額,請參閱 Google 的配額 服務。新建立的 Google Workspace 網域可能會暫時受到更嚴格的限制

參數

名稱類型說明
contentTypeString要轉換的 MIME 類型。大多數 blob 的 'application/pdf' 是 就是唯一有效的選項如為 BMP、GIF、JPEG 或 PNG 格式的圖片,也應採用 'image/bmp''image/gif''image/jpeg''image/png' 格式 有效。如果是 Google 文件,'text/markdown' 也是有效的格式。

回攻員

Blob - 做為 blob 的資料。


getBlob()

以 blob 的形式傳回這個物件中的資料。

回攻員

Blob - 做為 blob 的資料。


getDateCreated()

取得 File 的建立日期。

回攻員

DateFile的建立日期。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getDescription()

取得 File 的說明。

回攻員

StringFile 的說明

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getDownloadUrl()

取得可用於下載檔案的網址。僅限有權開啟檔案的使用者 即可存取這個網址。您可以在瀏覽器中使用這個網址下載檔案,但 你無法透過 UrlFetchApp 擷取檔案。如要取得 檔案,請使用 getBlob()

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

// Loops through the files and logs the download URLs to the console.
while (files.hasNext()) {
  const file = files.next();
  console.log(file.getDownloadUrl());
}

回攻員

String:可用於下載檔案的網址。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getEditors()

取得這個 File 的編輯者清單。如果執行指令碼的使用者 沒有 File 的編輯權限,這個方法會傳回空陣列。

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

// Loops through the files.
while (files.hasNext()) {
  const file = files.next();

  // Adds the email addresses in the array as editors of each file.
  // TODO(developer): Replace 'cloudysanfrancisco@gmail.com'
  // and 'baklavainthebalkans@gmail.com' with valid email addresses.
  file.addEditors(['cloudysanfrancisco@gmail.com', 'baklavainthebalkans@gmail.com']);

  // Gets a list of the file editors.
  const editors = file.getEditors();

  // For each file, logs the editors' email addresses to the console.
  for (const editor of editors) {
    console.log(editor.getEmail());
  }
}

回攻員

User[]:如果使用者擁有這個 File 的編輯權限,系統會傳回 編輯如果使用者沒有編輯權限,系統會傳回空陣列。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getId()

取得 File 的 ID。

回攻員

StringFile 的 ID

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getLastUpdated()

取得 File 上次更新日期。

回攻員

Date:上次更新日期為 File 的日期

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getMimeType()

取得檔案的 MIME 類型。

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

// Loops through the files and logs the MIME type to the console.
while (files.hasNext()) {
  const file = files.next();
  console.log(file.getMimeType());
}

回攻員

String:檔案的 MIME 類型。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getName()

取得 File 的名稱。

回攻員

StringFile 的名稱

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getOwner()

取得檔案擁有者。

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

// Loops through the files and logs the names of the file owners to the console.
while (files.hasNext()) {
  const file = files.next();
  console.log(file.getOwner().getName());
}

回攻員

User:檔案擁有者。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getParents()

取得一組資料夾,這些資料夾是 File 的直接父項。

回攻員

FolderIterator:一組資料夾,是 File 的直系父項資料夾

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getResourceKey()

取得存取 File 所需的項目所需的資源金鑰 已經透過連結分享。

回攻員

StringFile 的資源金鑰。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getSecurityUpdateEligible()

確認這部File是否符合套用安全性更新的 透過連結共用時,需要資源金鑰才能存取。

Google 雲端硬碟需要資源金鑰,才能存取某些透過 Google 帳戶共用的檔案或資料夾 連結。這項異動是安全性更新的一部分。更新預設會啟用 檔案與資料夾如要為符合資格的檔案開啟或關閉資源金鑰規定,請使用 setSecurityUpdateEnabled

進一步瞭解 Google 雲端硬碟安全性更新

回攻員

Boolean:是否可對 File 套用資源金鑰規定。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getSecurityUpdateEnabled()

取得在適當情況下,這個 File 是否需要資源金鑰才能存取 透過連結分享。針對符合條件的檔案和資料夾,系統預設會啟用這項規定。 如要為符合資格的檔案開啟或關閉資源金鑰規定,請使用 setSecurityUpdateEnabled

進一步瞭解 Google 雲端硬碟安全性更新

回攻員

Boolean:這個 File 是否已啟用資源金鑰規定。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getSharingAccess()

取得有權存取 File 的使用者類別 (除了個別使用者外) 獲得明確授予存取權的使用者。

回攻員

Access:可以存取 File 的使用者類別

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getSharingPermission()

取得權限授予有權存取 File 的使用者。 向任何已明確授予存取權的使用者除外。

回攻員

Permission:授予使用者 File 存取權

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getSize()

取得在雲端硬碟中儲存 File 的位元組數。請注意, Google Workspace 應用程式檔案不會計入雲端硬碟儲存空間限制,因此可返回計算 0 個位元組。

回攻員

Integer:在雲端硬碟中儲存 File 的位元組數

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getTargetId()

如果這是捷徑,則傳回其指向的項目 ID。

如果沒有,則會傳回 null

// The ID of the file for which to make a shortcut and the ID of
// the folder to which you want to add the shortcut.
// TODO(developer): Replace the file and folder IDs with your IDs.
const fileId = 'abc123456';
const folderId = 'xyz987654';

// Gets the folder to add the shortcut to.
const folder = DriveApp.getFolderById(folderId);

// Creates a shortcut of the file and moves it to the specified folder.
const shortcut = DriveApp.createShortcut(fileId).moveTo(folder);

// Logs the target ID of the shortcut.
console.log(`${shortcut.getName()}=${shortcut.getTargetId()}`);

回攻員

String:目標項目 ID。


getTargetMimeType()

如果這是 Shortcut,則傳回其指向的項目 MIME 類型。

如果沒有,則會傳回 null

// The ID of the file for which to make a shortcut and the ID of
// the folder to which you want to add the shortcut.
// TODO(developer): Replace the file and folder IDs with your IDs.
const fileId = 'abc123456';
const folderId = 'xyz987654';

// Gets the folder to add the shortcut to.
const folder = DriveApp.getFolderById(folderId);

// Creates a shortcut of the file and moves it to the specified folder.
const shortcut = DriveApp.createShortcut(fileId).moveTo(folder);

// Logs the MIME type of the file that the shortcut points to.
console.log(`MIME type of the shortcut: ${shortcut.getTargetMimeType()}`);

回攻員

String:目標項目 MIME 類型。


getTargetResourceKey()

如果檔案是捷徑,則傳回其指向的項目的資源鍵。資源金鑰為 您必須傳遞一個額外參數,才能存取透過 Google 服務分享的檔案。 連結。

如果這個檔案不是捷徑,則會傳回 null

// Gets a file by its ID.
// TODO(developer): Replace 'abc123456' with your file ID.
const file = DriveApp.getFileById('abc123456');

// If the file is a shortcut, returns the resource key of the file that it points to.
console.log(file.getTargetResourceKey());

回攻員

String:目標項目的資源索引鍵;如果檔案不是捷徑,則為 null

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getThumbnail()

取得檔案的縮圖;如果沒有縮圖,則取得 null

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

// Loops through the files.
while (files.hasNext()) {
  const file = files.next();

  // Logs the thumbnail image for each file to the console as a blob,
  // or null if no thumbnail exists.
  console.log(file.getThumbnail());
}

回攻員

Blob:檔案的縮圖。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getUrl()

取得可在 Google 應用程式中開啟 File 的網址,例如: Google 雲端硬碟或文件。

回攻員

String:可用於在 Google 應用程式中查看這個 File 的網址,例如: Google 雲端硬碟或文件

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

getViewers()

取得這個File的檢視者和加註者名單。如果 執行指令碼沒有 File (此方法) 的編輯權限 會傳回空陣列。

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

// Loops through the files.
while (files.hasNext()) {
  const file = files.next();

  // For each file, logs the viewers' email addresses to the console.
  const viewers = file.getViewers();
  for (viewer of viewers) {
    console.log(viewer.getEmail());
  }
}

回攻員

User[]:如果使用者擁有這個 File 的編輯權限,系統會傳回 檢視者和加註者如果使用者沒有編輯權限,系統會傳回空陣列。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

isShareableByEditors()

決定擁有File編輯權限的使用者是否可執行以下操作 並與其他使用者共用或變更權限

回攻員

Boolean - true,如果具備編輯權限的使用者可以與其他使用者共用內容,或是 變更權限;如果不需要,則設為false

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

isStarred()

判斷File是否已在使用者雲端硬碟中加上星號。

回攻員

Boolean - 如果 File 在使用者雲端硬碟加上星號,則為 true;如果不是,則為 false

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

isTrashed()

決定 File 是否位於使用者的雲端硬碟垃圾桶中。

回攻員

Boolean - 如果 File 位於使用者雲端硬碟的垃圾桶中,則為 true; 如果不是,則為 false

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

makeCopy()

建立檔案副本。

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

// Loops through the files.
while (files.hasNext()) {
  const file = files.next();

  // Creates a copy of each file and logs the file name to the console.
  console.log(file.makeCopy().getName());
}

回攻員

File:新的副本。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

makeCopy(destination)

在目的地目錄中建立檔案副本。

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

// Loops through the files.
while (files.hasNext()) {
  const file = files.next();

  // Creates a copy of each file and adds it to the specified folder.
  // TODO(developer): Replace the folder ID with your own.
  const destination = DriveApp.getFolderById('123456abcxyz');
  const copiedFile = file.makeCopy(destination);

  // Logs the file names to the console.
  console.log(copiedFile.getName());
}

參數

名稱類型說明
destinationFolder要複製檔案的目錄。

回攻員

File:新的副本。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

makeCopy(name)

建立檔案副本,並以您提供的名稱命名。

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

// Loops through the files.
while (files.hasNext()) {
  const file = files.next();

  // Creates a copy of each file and sets the name to 'Test-Copy.'
  const filename = file.makeCopy('Test-Copy');

  // Logs the copied file's name to the console.
  console.log(filename.getName());
}

參數

名稱類型說明
nameString要套用至新副本的檔案名稱。

回攻員

File:新的副本。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

makeCopy(name, destination)

在目的地目錄中建立檔案副本,並以您提供的名稱命名。

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

// Loops through the files.
while (files.hasNext()) {
  const file = files.next();

  // Creates a copy of each file, sets the file name, and adds the copied file
  // to the specified folder.
  // TODO(developer): Replace the folder ID with your own.
  const destination = DriveApp.getFolderById('123456abcxyz');
  const copiedFile = file.makeCopy('Test-Copy', destination);

  // Logs the file names to the console.
  console.log(copiedFile.getName());
}

參數

名稱類型說明
nameString要套用至新副本的檔案名稱。
destinationFolder要複製檔案的目錄。

回攻員

File:新的副本。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

moveTo(destination)

將這個項目移至提供的目的地資料夾。

目前的使用者必須是檔案擁有者,或是至少具備這個項目的編輯權限 以便將項目移至目標資料夾。

參數

名稱類型說明
destinationFolder做為新父項的資料夾。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

removeCommenter(emailAddress)

將特定使用者從 File 的加註者清單中移除。這個方法 並不會禁止屬於特定類別的使用者存取 File 擁有一般存取權。舉例來說,如果 File 已與使用者的 整個網域。

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

// Loops through the files.
while (files.hasNext()) {
  const file = files.next();

  // Removes the given user from the list of commenters for each file.
  // TODO(developer): Replace the email with the email of the user you want to remove.
  file.removeCommenter('cloudysanfrancisco@gmail.com');
}

參數

名稱類型說明
emailAddressString要移除的使用者電子郵件地址。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

removeCommenter(user)

將特定使用者從 File 的加註者清單中移除。這個方法 並不會禁止屬於特定類別的使用者存取 File 擁有一般存取權。舉例來說,如果 File 已與使用者的 整個網域。

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

// Loops through the files.
while (files.hasNext()) {
  const file = files.next();

  // Removes the given user from the list of commenters for each file.
  console.log(file.removeCommenter(Session.getActiveUser()));
}

參數

名稱類型說明
userUser要移除的使用者表示法。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

removeEditor(emailAddress)

將特定使用者從 File 的編輯者清單中移除。這個方法 如果使用者所屬的類別含有以下使用者類別,則禁止使用者存取 File 一般存取權,例如 File 已與整個使用者共用 網域,或是 File 位於使用者可以存取的共用雲端硬碟中。

針對雲端硬碟檔案,這麼做也會將使用者從檢視者清單中移除。

參數

名稱類型說明
emailAddressString要移除的使用者電子郵件地址。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

removeEditor(user)

將特定使用者從 File 的編輯者清單中移除。這個方法 如果使用者所屬的類別含有以下使用者類別,則禁止使用者存取 File 一般存取權,例如 File 已與整個使用者共用 網域,或是 File 位於使用者可以存取的共用雲端硬碟中。

針對雲端硬碟檔案,這麼做也會將使用者從檢視者清單中移除。

參數

名稱類型說明
userUser要移除的使用者表示法。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

removeViewer(emailAddress)

將特定使用者從 File 的檢視者和加註者清單中移除。這個 如果使用者是編輯者,而不是檢視者或加註者,此方法不會生效。這個方法 無法禁止隸屬於特定類別的使用者存取 File 但具備一般存取權,例如將 File 與使用者的 或是使用者可以存取的共用雲端硬碟中,就刪除 File

針對雲端硬碟檔案,這麼做也會將使用者從編輯者清單中移除。

參數

名稱類型說明
emailAddressString要移除的使用者電子郵件地址。

回攻員

File:這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

removeViewer(user)

將特定使用者從 File 的檢視者和加註者清單中移除。這個 如果使用者是編輯者,而不是檢視者,此方法不會有任何作用。這個方法也不會 如果使用者屬於一般使用者的類別,就無法存取 File 存取權,例如 File 已與整個網域共用 如果 File 位於使用者有權存取的共用雲端硬碟中。

針對雲端硬碟檔案,這麼做也會將使用者從編輯者清單中移除。

參數

名稱類型說明
userUser要移除的使用者表示法。

回攻員

File:這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

revokePermissions(emailAddress)

撤銷已授予特定使用者的 File 存取權。這個方法 如果使用者所屬的課程有以下使用者類別,則禁止使用者存取 File 但具備一般存取權,例如將 File 與使用者的 整個網域。

參數

名稱類型說明
emailAddressString應撤銷存取權的使用者電子郵件地址。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

revokePermissions(user)

撤銷已授予特定使用者的 File 存取權。這個方法 如果使用者所屬的課程有以下使用者類別,則禁止使用者存取 File 但具備一般存取權,例如將 File 與使用者的 整個網域。

參數

名稱類型說明
userUser代表應撤銷其存取權的使用者。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

setContent(content)

使用指定取代項目覆寫檔案內容。如果 content 大於 10 MB,就會擲回例外狀況。

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

// Logs the content of the text file to the console.
console.log(file.getBlob().getDataAsString());

// Updates the content of the text file to 'Updated text!'
file.setContent('Updated text!')

// Logs content of the text file to the console.
console.log(file.getBlob().getDataAsString());

參數

名稱類型說明
contentString檔案的新內容。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

setDescription(description)

設定 File 的說明。

參數

名稱類型說明
descriptionStringFile」的新說明

回攻員

File:這個 File,用於鏈結

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

setName(name)

設定 File 的名稱。

參數

名稱類型說明
nameStringFile 的新名稱

回攻員

File:這個 File,用於鏈結

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

setOwner(emailAddress)

變更 File 的擁有者。這麼做也會讓先前的擁有者 明確授予File的編輯權限。

參數

名稱類型說明
emailAddressString應成為新擁有者的使用者電子郵件地址

回攻員

File:這個 File,用於鏈結

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

setOwner(user)

變更 File 的擁有者。這麼做也會讓先前的擁有者 明確授予File的編輯權限。

參數

名稱類型說明
userUser應成為新擁有者的使用者

回攻員

File:這個 File,用於鏈結

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

setSecurityUpdateEnabled(enabled)

設定 File 在什麼情況下是否需要資源金鑰才能存取 透過連結分享。系統預設會啟用符合資格的檔案和資料夾。

進一步瞭解 Google 雲端硬碟安全性更新

參數

名稱類型說明
enabledBoolean是否啟用 File 的資源金鑰規定。

回攻員

File - 這個 File 用於鏈結。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

setShareableByEditors(shareable)

設定是否允許擁有File編輯權限的使用者可以共用檔案 與其他使用者共用或變更權限新的 File 預設為 true

參數

名稱類型說明
shareableBooleantrue:如果具備編輯權限的使用者可以共用對象 或變更權限;false 表示不滿意

回攻員

File:這個 File,用於鏈結

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

setSharing(accessType, permissionType)

設定可存取 File 的使用者類別及權限 這些使用者除了獲得明確存取權的任何個別使用者外,

// Creates a folder that anyone on the Internet can read from and write to. (Domain
// administrators can prohibit this setting for users of a Google Workspace domain.)
var folder = DriveApp.createFolder('Shared Folder');
folder.setSharing(DriveApp.Access.ANYONE, DriveApp.Permission.EDIT);

參數

名稱類型說明
accessTypeAccess哪些使用者類別應能存取 File
permissionTypePermission應授予哪些使用者有權存取 File 的權限

回攻員

File:這個 File,用於鏈結

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

setStarred(starred)

設定是否要在使用者雲端硬碟中加上星號 File。預設值 新的Filefalse

參數

名稱類型說明
starredBoolean如果 File 應在使用者的應用程式中加上星號,則為 true 雲端硬碟如果不需要,則設為false

回攻員

File:這個 File,用於鏈結

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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

setTrashed(trashed)

設定 File 是否位於使用者雲端硬碟的垃圾桶中。只有 擁有者可以將File移至垃圾桶。新的 File 預設為 false

參數

名稱類型說明
trashedBooleantrue表示應將File移至垃圾桶 使用者的雲端硬碟;如果不需要,則設為false

回攻員

File:這個 File,用於鏈結

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

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