Tipos de parámetros comunes en la AWS CLI
En esta sección, se describen algunos de los tipos de parámetros comunes y el formato requerido típico.
Si tiene problemas con el formato de un parámetro para un comando específico, compruebe la ayuda escribiendo help
después del nombre del comando. La ayuda de cada subcomando incluye el nombre y la descripción de una opción. El tipo de parámetro de la opción se muestra entre paréntesis. Para obtener más información acerca de obtener ayuda, consulte Acceso a la ayuda y a los recursos para la AWS CLI.
Los tipos de parámetros incluyen:
Cadena
Los parámetros de cadena pueden contener caracteres alfanuméricos, símbolos y espacios en blanco del conjunto de caracteres ASCII
Algunos parámetros de cadena pueden aceptar datos binarios de un archivo. Consulte Archivos binarios para ver un ejemplo.
Timestamp
Las marcas temporales tienen un formato conforme a la norma ISO 8601DateTime
" o "Date
".
$
aws ec2 describe-spot-price-history
--start-time 2014-10-13T19:00:00Z
Los formatos aceptados son:
-
AAAA
-MM
-DD
Thh
:mm
:ss.sss
TZD (UTC)
, por ejemplo, 2014-10-01T20:30:00.000Z -
AAAA
-MM
-DD
Thh
:mm
:ss.sss
TZD (con compensación)
, por ejemplo, 2014-10-01T12:30:00.000-08:00 -
AAAA
:MM
:DD
, por ejemplo, 2014-10-01 -
Hora Unix en segundos; por ejemplo, 1412195400. Esto es lo que a veces se denomina fecha de inicio UNIX
y representa el número de segundos desde la medianoche del 1 de enero de 1970 UTC.
De forma predeterminada, la versión 2 de la AWS CLI convierte todos los valores DateTime response al formato ISO 8601.
Puede establecer el formato de la marca de tiempo con el ajuste de archivo cli_timestamp_format
.
Enumeración
Una o varias cadenas separadas por espacios. Si cualquiera de los elementos de cadena contiene un espacio, debe escribir dicho elemento entre comillas. Observe las normas de entrecomillado del terminal para evitar resultados inesperados
$
aws ec2 describe-spot-price-history
--instance-types m1.xlarge m1.medium
Booleano
Marcador binario que activa o desactiva una opción. Por ejemplo, ec2
describe-spot-price-history
tiene con un parámetro --dry-run
booleano que, cuando se especifica, valida la consulta con el servicio sin ejecutar realmente una consulta.
$
aws ec2 describe-spot-price-history
--dry-run
El resultado indica si el comando tenía el formato correcto o no. Este comando también incluye una versión --no-dry-run
del parámetro que puede utilizarse para indicar de forma explícita que el comando debe ejecutarse con normalidad, aunque no es necesario incluirlo, ya que este es el comportamiento predeterminado.
Entero
Un número entero sin firma.
$
aws ec2 describe-spot-price-history
--max-items 5
Binario/blob (objeto binario grande) y blob en streaming
En la AWS CLI, puede pasar un valor binario como una cadena directamente en la línea de comandos. Existen dos tipos de blobs:
Blob
Para pasar un valor a un parámetro con el tipo blob
, debe especificar una ruta a un archivo local que contenga los datos binarios mediante el prefijo fileb://
. Los archivos a los que se hace referencia mediante el prefijo fileb://
siempre se tratan como binarios sin codificar. La ruta especificada se interpreta como una ruta relativa al directorio de trabajo actual. Por ejemplo, el parámetro --plaintext
para aws kms encrypt
es un blob.
$
aws kms encrypt \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
--plaintext fileb://ExamplePlaintextFile
\ --output text \ --query CiphertextBlob | base64 \ --decode > ExampleEncryptedFile
nota
Por compatibilidad con versiones anteriores, puede utilizar el prefijo file://
. Se utilizan dos formatos en función de la configuración de archivo cli_binary_format
o de la opción de la línea de comandos --cli-binary-format
:
-
Predeterminado para la AWS CLI versión 2. Si el valor de la configuración es
base64
, los archivos a los que se hace referencia mediante el prefijofile://
se tratan como texto codificado en base64. -
Predeterminado para la AWS CLI versión 1. Si el valor de la configuración es
raw-in-base64-out
, los archivos a los que se hace referencia mediante el prefijofile://
se leen como texto y, a continuación, la AWS CLI intenta codificarlo en binario.
Para obtener más información, consulte la configuración de archivo cli_binary_format
o la opción de la línea de comandos --cli-binary-format
.
Blob de streaming
Los blobs de streaming como aws cloudsearchdomain upload-documents
no utilizan prefijos. En cambio, los parámetros de blob de streaming se formatean mediante la ruta de archivo directa. En el siguiente ejemplo se utiliza la ruta de archivo directa document-batch.json
para el comando aws cloudsearchdomain
upload-documents
:
$
aws cloudsearchdomain upload-documents \ --endpoint-url https://doc-my-domain.us-west-1.cloudsearch.amazonaws.com \ --content-type application/json \ --documents
document-batch.json
Asignación
Un conjunto de pares de clave-valor especificado en JSON o mediante la sintaxis abreviada de la CLI. En el siguiente ejemplo de JSON, se lee un elemento de una tabla de Amazon DynamoDB denominada my-table con un parámetro de mapa, --key
. El parámetro especifica la clave principal denominada id con un valor numérico de 1 en una estructura JSON anidada.
Para conocer un uso más avanzado de JSON en una línea de comandos, considere usar un procesador JSON de línea de comandos, comojq
, para crear cadenas JSON. Para obtener más información sobre jq
, consulte el repositorio jq
$
aws dynamodb get-item --table-name my-table --key '{"id": {"N":"1"}}'
{ "Item": { "name": { "S": "John" }, "id": { "N": "1" } } }
Documento
nota
La sintaxis abreviada no es compatible con los tipos de documento.
Los tipos de documento se utilizan para enviar datos sin necesidad de integrar JSON dentro de cadenas. El tipo de documento permite a los servicios proporcionar esquemas arbitrarios para que utilice tipos de datos más flexibles.
Esto permite enviar datos JSON sin necesidad de valores de escape. Por ejemplo, en lugar de utilizar la siguiente entrada JSON de escape:
{"document": "{\"key\":true}"}
Puede utilizar el tipo de documento que se muestra a continuación:
{"document": {"key": true}}
Valores válidos para tipos de documentos
Debido a la naturaleza flexible de los tipos de documentos, existen varios tipos de valores válidos. Entre los valores válidos se incluyen los siguientes:
- Cadena
-
--option
'"value"'
- Número
-
--option
123
--option
123.456
- Booleano
-
--option
true
- Nulo
-
--option
null
- Matriz
-
--option
'["value1", "value2", "value3"]'
--option
'["value", 1, true, null, ["key1", 2.34], {"key2": "value2"}]'
- Objeto
-
--option
'{"key": "value"}'
--option
'{"key1": "value1", "key2": 123, "key3": true, "key4": null, "key5": ["value3", "value4"], "key6": {"value5": "value6"}'