本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
筛选 AWS DataSync 资源
您可以使用中的和 ListTasks API 操作筛选您的 AWS DataSync 位置ListLocations和任务 AWS CLI。例如,检索最近任务的列表。
用于筛选的参数
您可以使用 API 筛选器来缩小 ListTasks 和 ListLocations 返回的资源列表的范围。例如,要检索所有 Amazon S3 位置,您可以使用筛选器名称为 LocationTypeS3 和 OperatorEquals 的 ListLocations。
要筛选 API 结果,您必须指定筛选器名称、运算符和值。
Name— 正使用的筛选器的名称。每个 API 调用都支持可用于其的筛选器列表(例如,ListLocations的LocationType)。Values— 要筛选的值。例如,您可能希望仅显示 Amazon S3 位置。Operator— 用于比较筛选值的运算符(例如,Equals或Contains)。
下表列出了可用的运算符。
| 运算符 | 密钥类型 |
|---|---|
Equals |
字符串、数字 |
NotEquals |
字符串、数字 |
LessThan |
数字 |
LessThanOrEqual |
数字 |
GreaterThan |
数字 |
GreaterThanOrEqual |
数字 |
In |
字符串 |
Contains |
字符串 |
NotContains |
字符串 |
BeginsWith |
字符串 |
按位置筛选
ListLocations 支持以下筛选器名称:
-
LocationType— 按位置类型进行筛选:-
SMB -
NFS -
HDFS -
OBJECT_STORAGE -
S3 -
OUTPOST_S3 -
FSX_WINDOWS -
FSX_LUSTRE -
FSX_OPENZFS_NFS -
FSX_ONTAP_NFS -
FSX_ONTAP_SMB
-
-
LocationUri— 按分配给该位置的统一资源标识符(URI)筛选,该标识符由DescribeLocation*API 调用返回(例如,Amazon S3 位置的s3://)。bucket-name/your-prefix -
CreationTime— 按创建位置的时间筛选。输入格式为yyyy-MM-dd:mm:ss,采用协调世界时 (UTC)。
以下 AWS CLI 示例列出了所有类型为 Amazon S3 的营业地点,这些营业地点 URI 以字符串开头,"s3://amzn-s3-demo-bucket"且创建时间为 2019-12-15 17:15:20 或之后(世界标准时间)。
aws datasync list-locations \ --filters [{Name=LocationType, Values=["S3"], Operator=Equals}, {Name=LocationUri, Values=["s3://amzn-s3-demo-bucket"], Operator=BeginsWith}, {Name=CreationTime,Values=["2019-12-15 17:15:20"],Operator=GreaterThanOrEqual}]
该命令会返回类似以下内容的输出。
{ "Locations": [ { "LocationArn": "arn:aws:datasync:us-east-1:111122223333:location/loc-333333333abcdef0", "LocationUri": "s3://amzn-s3-demo-bucket1/" }, { "LocationArn": "arn:aws:datasync:us-east-1:123456789012:location/loc-987654321abcdef0", "LocationUri": "s3://amzn-s3-demo-bucket2/" } ] }
按任务筛选
ListTasks 支持以下筛选器名称。
-
LocationId— 按 Amazon 资源名称(ARN)值上的源位置和目标位置筛选。 -
CreationTime— 按创建任务的时间筛选。输入格式为 UTC 形式的yyyy-MM-dd:mm:ss。
以下 AWS CLI 示例显示了筛选时的语法LocationId。
aws datasync list-tasks \ --filters Name=LocationId,Values=arn:aws:datasync:us-east-1:your-account-id:location/your-location-id,Operator=Contains
此命令的输出如下。
{ "Tasks": [ { "TaskArn": "arn:aws:datasync:us-east-1:your-account-id:task/your-task-id", "Status": "AVAILABLE", "Name": "amzn-s3-demo-bucket" } ] }