這是與 https://drive.google.com 最接近的 googledrive 函數:默認情況下,您隻會獲得文件列表。您還可以通過多種方式進行搜索,例如按文件類型或所有權過濾或使用 shared drives 。這是一個非常強大的函數。與更具體的 drive_get()
一起,這是識別下遊工作目標文件的主要方法。如果您知道要在特定文件夾或共享驅動器中搜索,請使用 drive_ls()
。
用法
drive_find(
pattern = NULL,
trashed = FALSE,
type = NULL,
n_max = Inf,
shared_drive = NULL,
corpus = NULL,
...,
verbose = deprecated(),
team_drive = deprecated()
)
參數
- pattern
-
特點。如果提供,則僅返回名稱與此正則表達式匹配的項目。這是根據 API 返回的結果在本地實現的。
- trashed
-
邏輯性強。是否搜索不在回收站中的文件(
trashed = FALSE
,默認值)、僅搜索位於回收站中的文件 (trashed = TRUE
),或者無論已回收狀態如何都進行搜索 (trashed = NA
)。 - type
-
特點。如果提供,則僅返回此類型的文件。可以是
drive_mime_type()
知道如何處理的任何內容。這由 googledrive 處理並作為查詢參數發送。 - n_max
-
整數。要返回的項目數的上限。這適用於從 API 請求的結果,可以通過
pattern
參數在本地進一步過濾。 - shared_drive
-
標識一個特定共享驅動器的任何內容:其名稱、其 ID 或標有
as_id()
或dribble
的 URL。提供給shared_drive
的值使用as_shared_drive()
進行預處理。了解更多關於shared drives的信息。 - corpus
-
字符,指定要搜索的項目集合。與使用共享雲端硬盤和/或 Google Workspace 網域的人員相關。如果指定,則必須是
"user"
、"drive"
(要求還指定shared_drive
)、"allDrives"
或"domain"
之一。了解更多關於shared drives的信息。 - ...
-
在請求中傳遞的其他參數。最有可能的候選者是
q
。請參閱下文和 API 的 Search for files and folders guide 。 - verbose
-
這種對各個 googledrive 函數的邏輯論證已被棄用。要全局禁止 googledrive 消息傳遞,請使用
options(googledrive_quiet = TRUE)
(默認行為是發出信息性消息)。要以更有限的方式抑製消息傳遞,請使用幫助程序local_drive_quiet()
或者with_drive_quiet()
. - team_drive
-
Google Drive 和 Drive API 已用共享雲端硬盤取代了團隊雲端硬盤。
值
dribble
類的對象,每個文件一行的 tibble。
文件類型
type
參數已使用 drive_mime_type()
進行預處理,因此除了 full-blown MIME 類型之外,您還可以使用一些快捷方式和文件擴展名。 googledrive 形成一個搜索子句傳遞給 q
。
垃圾
默認情況下,drive_find()
設置trashed = FALSE
,並且不將文件包含在回收站中。從字麵上看,它將q = "trashed = false"
添加到查詢中。要僅搜索箱子,請設置 trashed = TRUE
。要查看文件而不考慮垃圾狀態,請設置 trashed = NA
,這會將 q = "(trashed = true or trashed = false)"
添加到查詢中。
排序
默認,drive_find()
發送orderBy = "recency desc"
,因此結果中的頂部文件具有較高的"recency"(無論這意味著什麽)。抑製發送orderBy
無論如何,做drive_find(orderBy = NULL)
.這orderBy
除了以下參數之外,參數還接受排序鍵recency
,記錄在files.list
端點。 googledrive 翻譯 snake_case 規範order_by
轉化為低位駱駝形式,orderBy
.
共享驅動器和域
如果您使用共享雲端硬盤和/或 Google Workspace,則可以將搜索查詢應用於與 "My Drive" 關聯的項目集合之外的項目集合。使用shared_drive
或corpus
參數來控製它。了解更多關於shared drives的信息。
例子
if (FALSE) {
# list "My Drive" w/o regard for folder hierarchy
drive_find()
# filter for folders, the easy way and the hard way
drive_find(type = "folder")
drive_find(q = "mimeType = 'application/vnd.google-apps.folder'")
# filter for Google Sheets, the easy way and the hard way
drive_find(type = "spreadsheet")
drive_find(q = "mimeType='application/vnd.google-apps.spreadsheet'")
# files whose names match a regex
# the local, general, sometimes-slow-to-execute version
drive_find(pattern = "ick")
# the server-side, executes-faster version
# NOTE: works only for a pattern at the beginning of file name
drive_find(q = "name contains 'chick'")
# search for files located directly in your root folder
drive_find(q = "'root' in parents")
# FYI: this is equivalent to
drive_ls("~/")
# control page size or cap the number of files returned
drive_find(pageSize = 50)
# all params passed through `...` can be camelCase or snake_case
drive_find(page_size = 50)
drive_find(n_max = 58)
drive_find(page_size = 5, n_max = 15)
# various ways to specify q search clauses
# multiple q's
drive_find(
q = "name contains 'TEST'",
q = "modifiedTime > '2020-07-21T12:00:00'"
)
# vector q
drive_find(q = c("starred = true", "visibility = 'anyoneWithLink'"))
# default `trashed = FALSE` excludes files in the trash
# `trashed = TRUE` consults ONLY file in the trash
drive_find(trashed = TRUE)
# `trashed = NA` disregards trash status completely
drive_find(trashed = NA)
# suppress the default sorting on recency
drive_find(order_by = NULL, n_max = 5)
# sort on various keys
drive_find(order_by = "modifiedByMeTime", n_max = 5)
# request descending order
drive_find(order_by = "quotaBytesUsed desc", n_max = 5)
}
相關用法
- R googledrive drive_fields 請求部分資源
- R googledrive drive_cp 複製雲端硬盤文件
- R googledrive drive_mime_type 查找 MIME 類型
- R googledrive drive_reveal 添加新的雲端硬盤文件信息列
- R googledrive drive_rm 從雲端硬盤刪除文件
- R googledrive drive_id 驅動器 ID 類
- R googledrive drive_auth_configure 編輯和查看身份驗證配置
- R googledrive drive_upload 上傳到新的雲端硬盤文件
- R googledrive drive_mv 移動雲端硬盤文件
- R googledrive drive_put 將新媒體放入雲端硬盤文件中
- R googledrive drive_has_token 手上有令牌嗎?
- R googledrive drive_user 獲取當前用戶的信息
- R googledrive drive_rename 重命名雲端硬盤文件
- R googledrive drive_trash 將雲端硬盤文件移入或移出回收站
- R googledrive drive_share 共享雲端硬盤文件
- R googledrive drive_about 獲取有關雲端硬盤函數的信息
- R googledrive drive_update 更新現有雲端硬盤文件
- R googledrive drive_mkdir 創建雲端硬盤文件夾
- R googledrive drive_endpoints 列出驅動器端點
- R googledrive drive_deauth 暫停授權
- R googledrive drive_link 檢索雲端硬盤文件鏈接
- R googledrive drive_create 創建一個新的空白雲端硬盤文件
- R googledrive drive_examples 示例文件
- R googledrive drive_browse 在瀏覽器中訪問雲端硬盤文件
- R googledrive drive_token 生成配置的令牌
注:本文由純淨天空篩選整理自Jennifer Bryan等大神的英文原創作品 Find files on Google Drive。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。