使用 files.list
方法搜索文件和文件夹。
在当前用户的“我的云端硬盘”中搜索所有文件和文件夹
使用不带任何参数的 files.list
返回所有文件和文件夹。
在当前用户的“我的云端硬盘”中搜索特定文件或文件夹
如需搜索一组特定的文件或文件夹,请使用查询字符串 q
和 files.list
来过滤要返回的文件。
以下示例显示了查询字符串的格式:
query_term operator values
其中:
- query_term 是要搜索的查询字词或字段。如需查看可用于过滤共享云端硬盘的查询字词,请参阅搜索查询字词。
- operator 指定查询字词的条件。如需查看每个查询字词可以使用哪些运算符,请参阅查询运算符。
- values 是用于过滤搜索结果的特定值。
例如,以下查询字符串会过滤搜索,以便仅返回文件夹:
q: mimeType = 'application/vnd.google-apps.folder'
以下示例展示了如何使用客户端库按 JPEG 图片文件的文件名和 ID 过滤搜索结果。此示例使用 mimeType
查询字词将结果范围缩小到 image/jpeg
类型的文件。此示例也将 spaces
设置为 drive
,以进一步缩小搜索范围 drive
空间。当 nextPageToken
返回 null
时,没有更多结果。
Java
Python
Node.js
PHP
如需将搜索限制为文件夹,请使用查询字符串将 MIME 类型设置为 q: mimeType = 'application/vnd.google-apps.folder'
如需详细了解 MIME 类型,请参阅 Google Workspace 和云端硬盘 MIME 类型。
查询字符串示例
下表显示了一些基本的查询字符串。实际代码因用于搜索的客户端库而异。
您要查询的内容 | 示例 |
---|---|
名为“hello”的文件 | name = 'hello' |
名称中包含“hello”和“goodbye”的文件 | name contains 'hello' and name contains 'goodbye' |
名称中不包含“hello”一词的文件 | not name contains 'hello' |
属于 Google 应用或文件夹类型为 MIME 的文件夹 | mimeType = 'application/vnd.google-apps.folder' |
不是文件夹的文件 | mimeType != 'application/vnd.google-apps.folder' |
包含文字“重要”且位于回收站中的文件 | fullText contains 'important' and trashed = true |
包含字词“hello”的文件 | fullText contains 'hello' |
不含“hello”一词的文件 | not fullText contains 'hello' |
包含确切词组“hello world”的文件 | fullText contains '"hello world"' |
包含包含“\”字符的查询(例如,“\authors”) | fullText contains '\\authors' |
集合中具有 ID 的文件,例如 parents 集合 |
'1234567' in parents |
集合中的应用数据文件夹中的文件 | 'appDataFolder' in parents |
用户“test@example.org”拥有写入权限的文件 | 'test@example.org' in writers |
群组“group@example.org”中拥有写入权限的文件 | 'group@example.org' in writers |
在指定日期之后修改的文件 | modifiedTime > '2012-06-04T12:00:00' // default time zone is UTC |
与获得授权的用户共享,名称中包含“hello”的文件 | sharedWithMe and name contains 'hello' |
未与任何人共享或仅与特定用户或群组共享的文件 | visibility = 'limited' |
在特定日期之后修改的图片或视频文件 | modifiedTime > '2012-06-04T12:00:00' and (mimeType contains 'image/' or mimeType contains 'video/') |
搜索具有自定义文件属性的文件
如需搜索具有自定义文件属性的文件,请使用键和值的 appProperties
搜索查询字词。例如,如需搜索名为 additionalID
且值为 8e8aceg2af2ge72e78
的自定义文件属性,请使用以下代码:
appProperties has { key='additionalID' and value='8e8aceg2af2ge72e78' }
如需详细了解自定义文件属性,请参阅添加自定义文件属性。
搜索具有特定标签或字段值的文件
如需搜索具有特定标签的文件,请使用具有特定标签 ID 的 labels
搜索查询字词。例如 'labels/LABEL_ID'
in labels
如需搜索没有特定标签 ID 的文件:Not
'labels/LABEL_ID' in labels
您还可以根据特定字段值搜索文件。例如,如需搜索包含文本值的文件,请使用以下代码:labels/LABEL_ID.text_field_id =
'TEXT'
如需了解详情,请参阅搜索具有特定标签或字段值的文件。
搜索分类
默认情况下,调用 files.list
的搜索使用 user
语料库。如需搜索其他语料库(例如共享到Google Workspace 网域的文件),请使用 corpora
参数。
可以在一个查询中搜索多个语料库,但如果组合语料库过大,可能会返回不完整的结果。如果 incompleteSearch
结果为 true
,则表示未返回所有文档。