Types de paramètres courants dans l’AWS CLI
Cette section décrit certains types de paramètres communs et le format typique requis.
Si vous rencontrez des difficultés pour la mise en forme d’un paramètre d’une commande spécifique, consultez l’aide ; pour ce faire, saisissez help après le nom de la commande. L’aide pour chaque sous-commande inclut le nom et la description d’une option. Le type de paramètre de l’option est répertorié entre parenthèses. Pour plus d’informations sur l’affichage de l’aide, consultez Accès à l’aide et aux ressources pour l’AWS CLI.
Les types de paramètres comprennent :
Chaîne
Les paramètres de chaîne peuvent contenir des caractères alphanumériques, des symboles et des espaces blancs du jeu de caractères ASCII
Certains paramètres de chaîne peuvent accepter les données binaires d’un fichier. Consultez Fichiers binaires pour voir un exemple.
Horodatage
Les horodatages sont mis en forme selon la norme ISO 8601DateTime » ou Date « ».
$aws ec2 describe-spot-price-history--start-time 2014-10-13T19:00:00Z
Les formats acceptables sont les suivants :
-
AAAA-MM-JJThh:mm:ss.sssTZD (UTC), par exemple, 2014-10-01T20:30:00.000Z -
AAAA-MM-JJThh:mm:ss.sssTZD (avec décalage), par exemple, 2014-10-01T12:30:00.000-08:00 -
AAAA-MM-JJ, par exemple, 2014-10-01 -
Horaire Unix en secondes, par exemple 1412195400. Ceci est parfois appelé Heure d’époque Unix
et représente le nombre de secondes écoulées depuis le 1er janvier 1970 à minuit, UTC.
Par défaut, la version 2 de l’AWS CLI traduit toutes les valeurs DateTime de la réponse au format ISO 8601.
Vous pouvez définir le format d’horodatage à l’aide du paramètre de fichier cli_timestamp_format.
Liste
Une ou plusieurs chaînes séparées par des espaces. Si l’un des éléments de chaîne contient un espace, vous devez mettre cet élément entre guillemets. Respectez les règles de guillemets de votre terminal pour éviter des résultats inattendus.
$aws ec2 describe-spot-price-history--instance-types m1.xlarge m1.medium
Booléen
Indicateur binaire qui active ou désactive une option. Par exemple, ec2
describe-spot-price-history comporte un paramètre d’essai booléen --dry-run qui, lorsqu’il est spécifié, valide la demande sur le service sans réellement exécuter la requête.
$aws ec2 describe-spot-price-history--dry-run
La sortie indique si la commande était ou non correctement mise en forme. Cette commande inclut également une version --no-dry-run du paramètre qui peut être utilisée pour indiquer de manière explicite que la commande doit s’exécuter normalement. Il n’est pas nécessaire de l’inclure puisqu’il s’agit du comportement par défaut.
Entier
Nombre entier non signé.
$aws ec2 describe-spot-price-history--max-items 5
Binaire/blob (gros objet binaire) et blob de streaming
Dans l’AWS CLI, vous pouvez transmettre une valeur binaire en tant que chaîne directement sur la ligne de commande. Il existe deux types de blobs :
Blob
Pour transmettre une valeur à un paramètre de type blob, vous devez spécifier un chemin d’accès à un fichier local contenant les données binaires à l’aide du préfixe fileb://. Les fichiers référencés à l’aide du préfixe fileb:// sont toujours traités comme des fichiers binaires bruts non codés. Le chemin spécifié est interprété comme étant relatif au répertoire de travail actuel. Par exemple, le paramètre --plaintext pour aws kms encrypt est un objet blob.
$aws kms encrypt \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \--plaintext fileb://ExamplePlaintextFile\ --output text \ --query CiphertextBlob | base64 \ --decode > ExampleEncryptedFile
Note
Pour des raisons de rétrocompatibilité, vous pouvez utiliser le préfixe file://. Deux formats sont utilisés en fonction de l’option de ligne de commande cli_binary_format ou --cli-binary-format du paramètre de fichier :
-
Par défaut pour la version 2 de l’AWS CLI. Si la valeur du paramètre est
base64, les fichiers référencés à l’aide du préfixefile://sont traités comme du texte codé en base64. -
Par défaut pour la version 1 de l’AWS CLI. Si la valeur du paramètre est
raw-in-base64-out, les fichiers référencés à l’aide du préfixefile://sont lus sous forme de texte, puis l’AWS CLI essaie de les coder en binaire.
Pour plus d’informations, consultez le paramètre de fichier cli_binary_format ou l’option de ligne de commande --cli-binary-format.
Blob de streaming
Les blobs de streaming tels que aws cloudsearchdomain upload-documents n’utilisent pas de préfixes. Au lieu de cela, les paramètres du blob de streaming sont formatés à l’aide du chemin de fichier direct. L’exemple suivant utilise le chemin de fichier direct document-batch.json pour la commande aws cloudsearchdomain
upload-documents :
$aws cloudsearchdomain upload-documents \ --endpoint-url https://doc-my-domain.us-west-1.cloudsearch.amazonaws.com \ --content-type application/json \ --documentsdocument-batch.json
Map
Ensemble de paires clés-valeurs spécifiées en JSON ou à l’aide de la syntaxe raccourcie de l’interface de ligne de commande. L’exemple JSON suivant lit un élément d’un tableau Amazon DynamoDB nommé my-table avec un paramètre map, --key. Le paramètre spécifie la clé primaire nommée id avec la valeur numérique 1 dans une structure JSON imbriquée.
Pour une utilisation plus avancée du JSON dans une ligne de commande, pensez à utiliser un processeur JSON en ligne de commandejq, par exemple pour créer des chaînes JSON. Pour plus d’informations sur jq, consultez le référentiel jq
$aws dynamodb get-item --table-name my-table --key '{"id": {"N":"1"}}'{ "Item": { "name": { "S": "John" }, "id": { "N": "1" } } }
Document
Note
La syntaxe raccourcie n’est pas compatible avec les types de documents.
Les types de documents sont utilisés pour envoyer des données sans qu’il soit nécessaire d’intégrer du JSON dans des chaînes. Le type de document permet aux services de fournir des schémas arbitraires afin que vous puissiez utiliser des types de données plus flexibles.
Cela permet d’envoyer des données JSON sans avoir à échapper des valeurs. Par exemple, au lieu d’utiliser l’entrée JSON échappée suivante :
{"document": "{\"key\":true}"}
Vous pouvez utiliser le type de document suivant :
{"document": {"key": true}}
Valeurs valides pour les types de documents
En raison de la flexibilité des types de documents, il existe plusieurs types de valeurs valides. Les valeurs valides sont notamment les suivantes :
- Chaîne
-
--option'"value"' - Nombre
-
--option123--option123.456 - Booléen
-
--optiontrue - Null
-
--optionnull - Tableau
-
--option'["value1", "value2", "value3"]'--option'["value", 1, true, null, ["key1", 2.34], {"key2": "value2"}]' - Objet
-
--option'{"key": "value"}'--option'{"key1": "value1", "key2": 123, "key3": true, "key4": null, "key5": ["value3", "value4"], "key6": {"value5": "value6"}'