在 中使用短期語法 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 EC2create-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"} ]'