AWS Command Line Interface
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS Command Line Interface 是什么?

AWS Command Line Interface (AWS CLI) 是一种开源工具,让您能够在命令行 Shell 中使用命令与 AWS 服务进行交互。仅需最少的配置,您就可以从常用终端程序中的命令提示符开始使用基于浏览器的 AWS 管理控制台提供的相同功能:

  • Linux Shell – 使用常见 Shell 程序(例如 bashzshtsch)在 Linux, OS X, or Unix 中运行命令。

  • Windows 命令行 – 在 Windows 上,在 PowerShell 或 Windows 命令提示符处运行命令。

  • 远程 – 通过远程终端(如 PuTTY 或 SSH)或者使用 AWS Systems Manager 在 Amazon Elastic Compute Cloud (Amazon EC2) 实例上运行命令。

所有 IaaS(基础设施即服务)AWS 管理和访问 AWS API 和 CLI 中提供的 AWS 管理控制台 函数。新的 AWS IaaS 功能和服务在启动时或在 180 天启动期内通过 API 和 CLI 提供全部 AWS 管理控制台 功能。

AWS CLI 提供对 AWS 服务的公共 API 的直接访问。您可以使用 AWS CLI 探索服务的功能,可以开发 Shell 脚本来管理资源。或者,也可以通过 AWS 开发工具包利用所学知识开发其他语言的程序。

除了低级别的 API 等效命令,多项 AWS 服务还为 AWS CLI 提供了自定义项。自定义项可能包括更高级别的命令,可简化具有复杂 API 的服务的使用。例如,aws s3 命令集提供熟悉的语法,用于管理 Amazon Simple Storage Service (Amazon S3) 中的文件。

例 将文件上传到 Amazon S3

aws s3 cp 提供了一个类似于 shell 的复制命令,并自动执行分段上传,以快速、弹性地传输大型文件。

$ aws s3 cp myvideo.mp4 s3://mybucket/

使用低级别命令 (在 aws s3api 下提供) 执行同一任务需要更多的工作。

根据您的用例,您可能希望使用 AWS 开发工具包或 适用于 PowerShell 的 AWS 工具 之一:

您可以在 aws-cli 存储库 中的 GitHub 上查看和复制 AWS CLI 的源代码。加入 GitHub 上的用户社区,提供反馈、请求功能和提交自己的文章!

使用本指南中的示例

本指南中示例的格式是使用下列约定进行设置的:

  • 提示符 – 命令提示符通常显示为美元符号后跟一个空格 ($ )。对于特定于 Windows 的命令,使用 C:\> 作为提示符。键入命令时,请勿包含提示符。

  • 目录 – 当必须从特定目录执行命令时,目录名称将显示在提示符符号之前。

  • 用户输入 – 您应在命令行处输入的命令文本采用 user input 格式。

  • 可替换文本 – 变量文本(包括您选择的资源的名称,或您必须包含在命令中的由 AWS 服务生成的 ID)采用的格式为可替换文本。在多行命令中或需要特定键盘输入的命令中,键盘命令也可显示为可替换文本。

  • 输出 – AWS 服务返回的输出显示在用户输入下方,格式化为 computer output

例如,以下命令包含用户输入、可替换文本和输出。

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: ENTER

要使用该示例,请在命令行处输入 aws configure 并按 Enteraws configure 是命令。此命令是交互式的,因此 AWS CLI 将输出文本行,用来提示您输入其他信息。依次输入每个访问密钥,然后按 Enter。然后,以显示的格式输入 AWS 区域名称,按 Enter,然后最后一次按 Enter 以跳过输出格式设置。最终 Enter 命令将显示为可替换文本,因为这一行没有用户输入。否则,此命令将是隐含的。

以下示例介绍一个简单的非交互式命令(来自服务的输出采用 JSON 格式)。

$ aws ec2 create-security-group --group-name my-sg --description "My security group" { "GroupId": "sg-903004f8" }

要使用此示例,请输入命令的完整文本(提示符后突出显示的文本),然后按 Enter。安全组的名称 my-sg 是可替换的。在这种情况下,您可以使用显示的组名称,但您可能希望使用更具描述性的名称。

注意

必须替换的参数(如 AWS Access Key ID)和应替换的参数(如 group name)均显示为斜体的可替换文本。如果某个参数是必须替换的,则描述示例的文本中会为其添加注释。

JSON 文档(包括大括号)是输出。如果您将 CLI 配置为以文本或表格式进行输出,输出的格式将有差异。JSON 是默认输出格式。

关于 Amazon Web Services

Amazon Web Services (AWS) 是数字基础设施服务的集合,开发人员可在开发应用程序时对其进行利用。这些服务包括计算、存储、数据库和应用程序同步(消息发送和队列)。AWS 采用即付即用的服务模式。您只需为您或您的应用程序使用的服务付费。此外,AWS 还提供免费使用套餐,以便让其作为原型制作和实验平台更易实现。在此套餐中,低于某种使用水平的服务是免费的。有关 AWS 成本和免费套餐的更多信息,请参阅试用免费使用套餐中的 AWS。要获取 AWS 账户,请打开 AWS 主页,然后单击注册