将速记语法与 Amazon CLI 结合使用 - Amazon Command Line Interface
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

将速记语法与 Amazon CLI 结合使用

Amazon Command Line Interface (Amazon CLI) 可以接受 JSON 格式的许多选项。但是,在命令行上输入较大的 JSON 列表或结构会比较繁琐。为了简化此过程,Amazon CLI 还支持一种速记语法,允许采用比完整 JSON 格式更简单的方式表示选项参数。

结构参数

通过 Amazon CLI 中的速记语法,用户更容易输入平面(非嵌套结构)参数。格式采用以逗号分隔的键值对列表。请务必使用适用于终端的引用以及转义规则,因为速记语法是字符串。

Linux or macOS
--option key1=value1,key2=value2,key3=value3
PowerShell
--option "key1=value1,key2=value2,key3=value3"

这两者均等同于以下采用 JSON 格式的示例。

--option '{"key1":"value1","key2":"value2","key3":"value3"}'

各逗号分隔的键值对之间不能有空格。下面的示例 Amazon DynamoDB update-table 命令包含采用速记语法指定的 --provisioned-throughput 选项。

$ aws dynamodb update-table \ --provisioned-throughput ReadCapacityUnits=15,WriteCapacityUnits=10 \ --table-name MyDDBTable

该示例等同于以下 JSON 格式的示例。

$ aws dynamodb update-table \ --provisioned-throughput '{"ReadCapacityUnits":15,"WriteCapacityUnits":10}' \ --table-name MyDDBTable

将速记语法与 Amazon Command Line Interface 结合使用

您可以使用两种方法以列表形式指定输入参数:JSON 或速记。使用 Amazon CLI 速记语法,可更方便地传入含有数字、字符串或非嵌套结构的列表。

下面显示了基本格式,列表中的值用单个空格分隔。

--option value1 value2 value3

该示例等同于以下 JSON 格式的示例。

--option '[value1,value2,value3]'

如前所述,您可以用速记语法指定数字列表、字符串列表或非嵌套结构的列表。以下是用于 Amazon Elastic Compute Cloud (Amazon EC2) 的 stop-instances 命令示例,其中,--instance-ids 选项的输入参数(字符串列表)采用速记语法指定。

$ aws ec2 stop-instances \ --instance-ids i-1486157a i-1286157c i-ec3a7e87

该示例等同于以下 JSON 格式的示例。

$ aws ec2 stop-instances \ --instance-ids '["i-1486157a","i-1286157c","i-ec3a7e87"]'

下面的示例显示 Amazon EC2 create-tags 命令,该命令针对 --tags 选项使用非嵌套结构的列表。--resources 选项指定要添加标签的实例的 ID。

$ aws ec2 create-tags \ --resources i-1286157c \ --tags Key=My1stTag,Value=Value1 Key=My2ndTag,Value=Value2 Key=My3rdTag,Value=Value3

该示例等同于以下 JSON 格式的示例。JSON 参数分多行编写以便于阅读。

$ aws ec2 create-tags \ --resources i-1286157c \ --tags '[ {"Key": "My1stTag", "Value": "Value1"}, {"Key": "My2ndTag", "Value": "Value2"}, {"Key": "My3rdTag", "Value": "Value3"} ]'