列出远程目录的内容 - Amazon Transfer Family
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

列出远程目录的内容

在从远程 SFTP 服务器检索文件之前,可以检索远程 SFTP 服务器上目录的内容。为此,您可以使用 StartDirectoryListingAPI 调用。

以下示例列出了远程 SFTP 服务器上该home文件夹的内容,该内容是在连接器的配置中指定的。结果将放入 Amazon S3 位置/DOC-EXAMPLE-BUCKET/connector-files和名为的文件中c-AAAA1111BBBB2222C-6666abcd-11aa-22bb-cc33-0000aaaa3333.json

aws transfer start-directory-listing \ --connector-id c-AAAA1111BBBB2222C \ --output-directory-path /DOC-EXAMPLE-BUCKET/example/connector-files \ --remote-directory-path /home

此 Amazon CLI 命令返回列表 ID 和包含结果的文件的名称。

{ "ListingId": "6666abcd-11aa-22bb-cc33-0000aaaa3333", "OutputFileName": "c-AAAA1111BBBB2222C-6666abcd-11aa-22bb-cc33-0000aaaa3333.json" }
注意

输出文件的命名约定为connector-ID-listing-ID.json

JSON 文件包含以下信息:

  • filePath:远程文件的完整路径,相对于远程服务器上 SFTP 连接器的列出请求目录。

  • modifiedTimestamp:上次修改文件的时间,以秒为单位,采用协调世界时 (UTC) 格式。该字段是可选的。如果远程文件属性不包含时间戳,则文件列表中将省略该时间戳。

  • size: 文件的大小,以字节为单位。该字段是可选的。如果远程文件属性不包含文件大小,则文件列表中将省略该文件大小。

  • path:远程目录的完整路径,相对于远程服务器上的 SFTP 连接器的列出请求目录。

  • truncated: 一个标志,指示列表输出是否包含远程目录中包含的所有项目。如果您的truncated输出值为 true,则可以增加可选max-items输入属性中提供的值,以便能够列出更多项目(允许的最大列表大小为 10,000 个)。

以下是输出文件 (c-AAAA1111BBBB2222C-6666abcd-11aa-22bb-cc33-0000aaaa3333.json) 内容的示例,其中远程目录包含两个文件和两个子目录(路径)。

{ "files": [ { "filePath": "/home/what.txt", "modifiedTimestamp": "2024-01-30T20:34:54Z", "size" : 2323 }, { "filePath": "/home/how.pgp", "modifiedTimestamp": "2024-01-30T20:34:54Z", "size" : 4691 } ], "paths": [ { "path": "/home/magic" }, { "path": "/home/aws" }, ], "truncated": "false" }