这是与 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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。