

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

# 在 中使用速記語法 AWS CLI
<a name="cli-usage-shorthand"></a>

 AWS Command Line Interface (AWS CLI) 可以接受 JSON 格式的許多選項參數。不過，在命令列輸入大型 JSON 清單或結構可能會變得很冗長。為了簡化此作業， AWS CLI 也支援速記語法，相較於使用完整的 JSON 格式，可讓您更輕鬆地呈現選項參數。

**Topics**
+ [

## 具有金鑰-值對的結構參數
](#shorthand-structure-parameters)
+ [

## 將檔案載入為速記語法值
](#shorthand-files)
+ [

## 搭配 使用速記語法 AWS CLI
](#shorthand-list-parameters)

## 具有金鑰-值對的結構參數
<a name="shorthand-structure-parameters"></a>

中的速記語法 AWS CLI 可讓使用者更輕鬆地輸入平坦的參數 （非巢狀結構）。格式為以逗號分隔的鍵值對清單。請務必使用您的終端機適用的[引用](cli-usage-parameters-quoting-strings.md)和轉義規則，因為速記語法是字串。

------
#### [ Linux or macOS ]

```
--option key1=value1,key2=value2,key3=value3
```

等同於下列 JSON 格式的範例。

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

------
#### [ Windows ]

```
--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
```

## 將檔案載入為速記語法值
<a name="shorthand-files"></a>

當值較大或複雜時，通常更容易載入做為值。若要將檔案載入為速記語法值，格式會稍微變更。不是 `key=value`，您將使用 `@=` 運算子，而非 `=` 運算子。`@=` 表示 AWS CLI 值應該讀取為檔案路徑，而不是字串。以速記語法載入檔案時，一般的 [AWS CLI 檔案格式規則適用](cli-usage-parameters-file.md)。下列範例會示範金鑰-值對如何為其值載入檔案。

------
#### [ Linux or macOS ]

```
--option key@=file://template.txt
```

------
#### [ Windows ]

```
--option "key1@=file://template.txt"
```

------

下列範例會示範為 `aws rolesanywhere create-trust-anchor` 命令載入憑證檔案。

```
$ aws rolesanywhere create-trust-anchor --name TrustAnchor \
    --source sourceData={x509CertificateData@=file://root-ca.crt},sourceType="CERTIFICATE_BUNDLE"  \ 
    --enabled
```

## 搭配 使用速記語法 AWS CLI
<a name="shorthand-list-parameters"></a>

您可以用兩種方式指定清單形式中的輸入參數：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"}
    ]'
```