Utilisation d’une syntaxe raccourcie dans l’AWS CLI - AWS Command Line Interface

Cette documentation concerne AWS CLI uniquement la version 1. Pour la documentation relative à la version 2 du AWS CLI, consultez le guide de l'utilisateur de la version 2.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisation d’une syntaxe raccourcie dans l’AWS CLI

L’AWS Command Line Interface (AWS CLI) peut accepter un grand nombre de ses paramètres d’option au format JSON. Toutefois, il peut être fastidieux de saisir de longues listes ou structures JSON sur la ligne de commande. Pour faciliter cette tâche, l’AWS CLI accepte également une syntaxe raccourcie qui permet une représentation plus simple de vos paramètres d’option que l’utilisation du format JSON complet.

Paramètres de structure avec paires clé-valeur

La syntaxe raccourcie de l’AWS CLI simplifie pour les utilisateurs la saisie des paramètres plats (structures non imbriquées). Le format est une liste séparée par des virgules des paires clé-valeur. Veillez à utiliser les règles de guillemets et d’échappement adaptées à votre terminal, car les syntaxes raccourcies sont des chaînes.

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

Cela équivaut à l’exemple suivant, au format JSON.

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

Cela équivaut à l’exemple suivant, au format JSON.

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

Il ne doit y avoir aucun espace entre chaque paire clé-valeur séparée par des virgules. Voici un exemple de la commande update-table Amazon DynamoDB avec l’option --provisioned-throughput indiquée en syntaxe raccourcie.

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

Cela équivaut à l’exemple suivant au format JSON.

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

Chargement d’un fichier en tant que valeur de syntaxe raccourcie

Lorsqu’une valeur est grande ou complexe, il est souvent plus facile de la charger en tant que valeur. Pour charger un fichier en tant que valeur de syntaxe raccourcie, le formatage changera légèrement. Au lieu de key=value, vous utiliserez l’opérateur @= au lieu de l’opérateur =. Le code @= signifie à l’AWS CLI que la valeur doit être lue comme un chemin de fichier et non comme une chaîne. Lorsque vous chargez des fichiers en syntaxe raccourcie, les règles habituelles de formatage des fichiers de l’AWS CLI s’appliquent. L’exemple suivant montre une paire clé-valeur en train de charger un fichier pour sa valeur.

Linux or macOS
--option key@=file://template.txt
Windows
--option "key1@=file://template.txt"

L’exemple suivant montre comment charger un fichier de certificat pour la commande aws rolesanywhere create-trust-anchor.

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

Utilisation de la syntaxe raccourcie avec l’AWS CLI

Vous pouvez spécifier des paramètres d’entrée d’une liste peuvent être spécifiés de deux manières : JSON ou syntaxe raccourcie. La syntaxe raccourcie de l’AWS CLI est conçue pour faciliter la transmission de listes comportant des nombres, des chaînes ou des structures non imbriquées.

Le format de base est illustré ici, avec les valeurs de la liste séparées par une seule espace.

--option value1 value2 value3

Cela équivaut à l’exemple suivant au format JSON.

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

Comme indiqué plus haut, vous pouvez utiliser une syntaxe raccourcie pour indiquer une liste de nombres, une liste de chaînes ou une liste de structures non imbriquées. Voici un exemple de commande stop-instances pour Amazon Elastic Compute Cloud (Amazon EC2), dans laquelle le paramètre d’entrée (liste de chaînes) de l’option --instance-ids est indiqué en syntaxe raccourcie.

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

Cela équivaut à l’exemple suivant au format JSON.

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

L’exemple suivant montre la commande create-tags d’Amazon EC2, qui utilise une liste de structures non imbriquées pour l’option --tags. L’option --resources spécifie l’ID de l’instance à baliser.

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

Cela équivaut à l’exemple suivant au format JSON. Le paramètre JSON est écrit sur plusieurs lignes pour une meilleure lisibilité.

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