与 Amazon SDK或DescribeJob一起使用 CLI - Amazon S3 Glacier
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

此页面仅适用于使用保管库的 S3 Glacier 服务的现有客户以及 2012 年以RESTAPI来的原始客户。

如果您正在寻找档案存储解决方案,我们建议您在亚马逊 S3、S3 Glacier 即时检索、S3 Glacier 灵活检索和 S3 Glacier Deep Archive Dee p Archive 中使用 S3 Glacier 存储类。要了解有关这些存储选项的更多信息,请参阅 Amazon S3 用户指南中的 S3 Glacier 存储类和使用 S3 Glacier 存储类的长期数据存储。这些存储类别使用 Amazon S3API,适用于所有区域,并且可以在 Amazon S3 控制台中进行管理。它们提供存储成本分析、存储镜头、高级可选加密功能等功能。

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

与 Amazon SDK或DescribeJob一起使用 CLI

以下代码示例演示如何使用 DescribeJob

CLI
Amazon CLI

以下命令检索名为 my-vault 的文件库中有关库存检索任务的信息:

aws glacier describe-job --account-id - --vault-name my-vault --job-id zbxcm3Z_3z5UkoroF7SuZKrxgGoDc3RloGduS7Eg-RO47Yc6FxsdGBgf_Q2DK5Ejh18CnTS5XW4_XqlNHS61dsO4CnMW

输出:

{ "InventoryRetrievalParameters": { "Format": "JSON" }, "VaultARN": "arn:aws:glacier:us-west-2:0123456789012:vaults/my-vault", "Completed": false, "JobId": "zbxcm3Z_3z5UkoroF7SuZKrxgGoDc3RloGduS7Eg-RO47Yc6FxsdGBgf_Q2DK5Ejh18CnTS5XW4_XqlNHS61dsO4CnMW", "Action": "InventoryRetrieval", "CreationDate": "2015-07-17T20:23:41.616Z", "StatusCode": "InProgress" }

任务 ID 可以在 aws glacier initiate-jobaws glacier list-jobs 的输出中找到。Amazon Glacier 在执行操作时需要一个账户 ID 参数,但您可以使用连字符来指定正在使用的账户。

PowerShell
用于 PowerShell

示例 1:返回指定任务的详细信息。任务成功完成后,可以使用 Read-GCJobOutput cmdlet 将任务的内容(档案或清单列表)检索到本地文件系统。

Get-GLCJob -VaultName myvault -JobId "op1x...JSbthM"

输出:

Action : ArchiveRetrieval ArchiveId : o9O9j...X-TpIhQJw ArchiveSHA256TreeHash : 79f3ea754c02f58...dc57bf4395b ArchiveSizeInBytes : 38034480 Completed : False CompletionDate : 1/1/0001 12:00:00 AM CreationDate : 12/13/2018 11:00:14 AM InventoryRetrievalParameters : InventorySizeInBytes : 0 JobDescription : JobId : op1x...JSbthM JobOutputPath : OutputLocation : RetrievalByteRange : 0-38034479 SelectParameters : SHA256TreeHash : 79f3ea754c02f58...dc57bf4395b SNSTopic : StatusCode : InProgress StatusMessage : Tier : Standard VaultARN : arn:aws:glacier:us-west-2:012345678912:vaults/test
  • 有关API详细信息,请参阅 Amazon Tools for PowerShell Cmdlet 参考DescribeJob中的。

Python
SDK适用于 Python (Boto3)
注意

还有更多相关信息 GitHub。查找完整示例,学习如何在 Amazon 代码示例存储库中进行设置和运行。

class GlacierWrapper: """Encapsulates Amazon S3 Glacier API operations.""" def __init__(self, glacier_resource): """ :param glacier_resource: A Boto3 Amazon S3 Glacier resource. """ self.glacier_resource = glacier_resource @staticmethod def get_job_status(job): """ Gets the status of a job. :param job: The job to query. :return: The current status of the job. """ try: job.load() logger.info( "Job %s is performing action %s and has status %s.", job.id, job.action, job.status_code, ) except ClientError: logger.exception("Couldn't get status for job %s.", job.id) raise else: return job.status_code
  • 有关API详细信息,请参阅DescribeJob中的 Amazon SDKPython (Boto3) API 参考。

有关 Amazon SDK开发者指南和代码示例的完整列表,请参阅将 S3 Glacier 与 S Amazon DK 配。本主题还包括有关入门的信息以及有关先前SDK版本的详细信息。