搭配 AWS CLI 使用速記語法 - AWS Command Line Interface

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

搭配 AWS CLI 使用速記語法

AWS Command Line Interface (AWS CLI) 可接受 JSON 格式的許多選項參數。不過,在命令列輸入大型 JSON 清單或結構可能會變得很冗長。為了讓這項操作更容易達成,AWS CLI 同時支援使用速記語法,相較於使用完整 JSON 格式,該語法可讓選項參數以更加簡潔的形式呈現。

結構參數

AWS 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

搭配 AWS Command Line Interface 使用速記語法

您可以用兩種方式指定清單形式中的輸入參數:JSON 或速記。AWS 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"} ]'