

# Opciones de línea de comandos en la AWS CLI
<a name="cli-configure-options"></a>

En AWS CLI, las opciones de línea de comandos son parámetros globales que puede utilizar para invalidar los ajustes de configuración predeterminados, cualquier configuración de perfil correspondiente o la configuración de variable de entorno de ese comando concreto. No se pueden utilizar las opciones de línea de comandos para especificar credenciales directamente, aunque es posible especificar qué perfil se debe utilizar. 

**Topics**
+ [

## Cómo utilizar las opciones de la línea de comandos
](#cli-configure-options-how)
+ [

## AWS CLIOpciones de la línea de comandos globales compatibles con
](#cli-configure-options-list)
+ [

## Usos comunes de las opciones de la línea de comandos
](#cli-configure-options-common)

## Cómo utilizar las opciones de la línea de comandos
<a name="cli-configure-options-how"></a>

La mayoría de las opciones de la línea de comandos son cadenas simples, como el nombre del perfil `profile1` en el siguiente ejemplo:

```
$ aws s3 ls --profile profile1
amzn-s3-demo-bucket1
amzn-s3-demo-bucket2
...
```

Cada opción toma un argumento que requiere un espacio o un signo igual (=) que separa el argumento del nombre de la opción. Si el valor del argumento es una cadena que contiene un espacio, debe utilizar comillas en torno al argumento. Para obtener más información sobre los tipos de argumentos y el formato de los parámetros, consulte [Especificación de valores de parámetros en la AWS CLI](cli-usage-parameters.md).

## AWS CLIOpciones de la línea de comandos globales compatibles con
<a name="cli-configure-options-list"></a>

En la AWS CLI puede utilizar las siguientes opciones de línea de comandos para anular los ajustes de configuración predeterminados, cualquier configuración de perfil correspondiente o la variable de entorno de ese comando concreto. 

**--ca-bundle *<string>***  
Especifica el paquete de certificados de la entidad emisora de certificados (CA) que se va a utilizar para verificar los certificados SSL.   
Si se define, esta opción anula el valor de la configuración del perfil `ca\$1bundle` y la variable del entorno de `AWS\$1CA\$1BUNDLE`.

**--cli-auto-prompt**  
Habilita el modo de solicitud automática para un solo comando. Como muestran los siguientes ejemplos, se puede especificar en cualquier momento.  

```
$ aws --cli-auto-prompt
$ aws dynamodb --cli-auto-prompt
$ aws dynamodb describe-table --cli-auto-prompt
```
Esta opción anula la variable de entorno de `aws\$1cli\$1auto\$1prompt` y la configuración del perfil `cli\$1auto\$1prompt`.  
Para obtener información sobre la característica de solicitud automática de la versión 2 de AWS CLI, consulte [Activación y uso de los símbolos del sistema en la AWS CLI](cli-usage-parameters-prompting.md).

**--cli-binary-format**  
Especifica cómo la versión 2 de AWS CLI interpreta los parámetros de entrada binarios. Puede ser uno de los siguientes valores:  
+ **base64**: este es el valor predeterminado. Un parámetro de entrada escrito como un objeto binario grande (BLOB) acepta una cadena codificada en base64. Para pasar verdadero contenido binario, coloque el contenido en un archivo y proporcione la ruta y el nombre del archivo con el prefijo `fileb://` como valor del parámetro. Para pasar el texto codificado en base64 incluido en un archivo, proporcione la ruta y el nombre del archivo con el prefijo `file://` como valor del parámetro.
+ **raw-in-base64-out**: valor 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 prefijo `file://` se leen como texto y, a continuación, la AWS CLI intenta codificarlo en binario.
Esto anula la opción de configuración de archivo `cli\$1binary\$1format`.  

```
$ aws lambda invoke \
    --cli-binary-format raw-in-base64-out \
    --function-name my-function \
    --invocation-type Event \
    --payload '{ "name": "Bob" }' \
    response.json
```
Si hace referencia a un valor binario en un archivo mediante la notación del prefijo `fileb://`, la AWS CLI *siempre* espera que el archivo incluya contenido binario sin codificar y no intenta convertir el valor.   
Si hace referencia a un valor binario en un archivo mediante la notación del prefijo `file://`, la AWS CLI tratará el archivo de acuerdo con el valor de `cli_binary_format` actual. Si el valor de esa configuración es `base64` (el valor predeterminado cuando no se establece explícitamente), la AWS CLI espera que el archivo contenga texto codificado en base64. Si el valor de esa configuración es `raw-in-base64-out`, la AWS CLI espera que el archivo incluya contenido binario sin codificar.

**--cli-connect-timeout *<número entero>***  
Especifica el máximo tiempo de conexión del conector en segundos. Si el valor se establece en cero (0), la conexión del socket espera de forma indefinida (bloqueo) y no se agota el tiempo de espera. El valor de predeterminado es de 60 segundos.

**--cli-read-timeout *<número entero>***  
Especifica el máximo tiempo de lectura del conector en segundos. Si el valor se establece en cero (0), la lectura del socket espera de forma indefinida (bloqueo) y no se agota el tiempo de espera. El valor de predeterminado es de 60 segundos.

**--color *<cadena>***  
Especifica la compatibilidad con el color de salida. Los valores válidos son `on`, `off` y `auto`. El valor predeterminado es `auto`.

**--debug**  
Modificador booleano que permite registrar la depuración. De manera predeterminada, la AWS CLI proporciona información limpia con respecto a los éxitos o errores en relación con los resultados de los comandos en la salida del comando. La `--debug` proporciona los registros completos de Python. Esto incluye información de diagnóstico adicional de `stderr` sobre la operación del comando que puede ser útil para resolver problemas si un comando proporciona resultados inesperados. Para ver fácilmente los registros de depuración, sugerimos enviar los registros a un archivo para buscar la información más fácilmente. Puede hacer esto utilizando de los siguientes métodos.  
Para enviar **solo** la información de diagnóstico de `stderr`, agregue `2> debug.txt` donde `debug.txt` es el nombre que desea usar para su archivo de depuración:  

```
$ aws servicename commandname options --debug 2> debug.txt
```
Para enviar **ambos** la salida y la información de diagnóstico de `stderr`, agregue `&> debug.txt` donde `debug.txt` es el nombre que desea usar para su archivo de depuración:  

```
$ aws servicename commandname options --debug &> debug.txt
```

**--endpoint-url *<cadena>***  
Especifica la URL a la que se va a enviar la solicitud. En la mayoría de comandos, la AWS CLI determina automáticamente la URL en función del servicio seleccionado y la región de AWS especificada. Sin embargo, algunos comandos requieren que especifique una dirección URL específica de la cuenta. También puede configurar algunos servicios de AWS para [alojar un punto de enlace directamente dentro de la VPC privada](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html#what-is-privatelink), que entonces debería especificarse.   
El siguiente ejemplo de comando usa una URL de punto de conexión de Amazon S3 personalizada.  

```
$ aws s3 ls --endpoint-url http://localhost:4567
```
**Prioridad de los puntos de conexión**  
Los ajustes de configuración de punto de conexión se encuentran en varios lugares, como las variables de entorno del sistema o del usuario, los archivos de configuración de AWS locales o declarados explícitamente en la línea de comandos como un parámetro. La AWS CLI comprueba estas configuraciones de punto de conexión en un orden determinado y utiliza la configuración de punto de conexión con la prioridad más alta. Para ver la lista de prioridad de los puntos de conexión, consulte [Prioridad de la configuración y los ajustes del punto de conexión](cli-configure-endpoints.md#endpoints-precedence).

**--no-cli-auto-prompt**  
Deshabilita el modo de solicitud automática para un solo comando.  

```
$ aws dynamodb describe-table --table-name Table1 --no-cli-auto-prompt
```
Esta opción anula la variable de entorno de `aws\$1cli\$1auto\$1prompt` y la configuración del perfil `cli\$1auto\$1prompt`.  
Para obtener información sobre la característica de solicitud automática de la versión 2 de AWS CLI, consulte [Activación y uso de los símbolos del sistema en la AWS CLI](cli-usage-parameters-prompting.md).

**—no-cli-pager**  
Modificador booleano que desactiva el uso de un buscapersonas para la salida del comando.

**--no-paginate**  
Un conmutador booleano que desactiva las llamadas múltiples que AWS CLIrealiza en forma automática para recibir todos los resultados de comandos que crean la paginación de la salida. Esto significa que solo se muestra la primera página de su salida.

**--no-sign-request**  
Modificador booleano que deshabilita la firma de las solicitudes HTTP para el punto de enlace de servicio de AWS. Impide que se carguen las credenciales.

**--no-verify-ssl**  
De forma predeterminada, la AWS CLI utiliza SSL cuando se comunica con los servicios de AWS. Para cada conexión y llamada SSL, la AWS CLI verifica los certificados SSL. El uso de esta opción invalida el comportamiento predeterminado de la verificación de los certificados SSL.   
Esta opción **no** es una práctica recomendada. Si usa `--no-verify-ssl`, el tráfico entre el cliente y los servicios de AWS ya no está protegido. Esto significa que el tráfico representa un riesgo para la seguridad y es vulnerable a los ataques de intermediarios. Si tiene problemas con los certificados, es mejor que los resuelva. Para conocer los pasos para solucionar problemas de certificados, consulte [Errores de certificado SSL](cli-chap-troubleshooting.md#tshoot-certificate-verify-failed). 

**--output *<cadena>***  
Especifica el formato de salida que se va a utilizar con este comando. Puede especificar cualquiera de los siguientes valores:  
+ **[`json`](cli-usage-output-format.md#json-output)**: la salida se formatea como una cadena [JSON](https://json.org/).
+  **[`yaml`](cli-usage-output-format.md#yaml-output)**: la salida se formatea como una cadena [YAML](https://yaml.org/).
+ **[`yaml-stream`](cli-usage-output-format.md#yaml-stream-output)**: la salida se transmite y se formatea como una cadena [YAML](https://yaml.org/). La transmisión permite gestionar tipos de datos de gran tamaño de forma más rápida.
+ **[`text`](cli-usage-output-format.md#text-output)** – la salida tiene el formato de varias líneas de valores de cadena separados por tabuladores. Esto puede ser útil para pasar la salida a un procesador de texto, como `grep`, `sed` o `awk`.
+ **[`table`](cli-usage-output-format.md#table-output)** – el resultado tiene el formato de una tabla en la que se usan los caracteres \$1\$1- para los bordes de celda. Normalmente, la información se presenta en un formato que es más fácil de leer que los demás formatos, pero que no es útil para programar.
+ **[`off`](cli-usage-output-format.md#off-output)**: la salida suprime todas las salidas de comando a stdout. Esto resulta útil en scripts de automatización y en procesos de CI/CD, en los que solo es necesario comprobar el código de salida del comando sin procesar la salida.

**--profile *<cadena>***  
Especifica el [perfil con nombre](cli-configure-files.md#cli-configure-files-using-profiles) que se va a utilizar con este comando. Para configurar perfiles con nombre adicionales, puede utilizar el comando `aws configure` con la opción `--profile`.  

```
$ aws configure --profile <profilename>
```

**--query *<cadena>***  
Especifica una [consulta de JMESPath](https://jmespath.org/) que se usa para filtrar los datos de la respuesta. Para obtener más información, consulte [Filtrado de la salida en la AWS CLI](cli-usage-filter.md).

**--region *<cadena>***  
Especifica a qué región de AWS se va a enviar la solicitud de AWS de este comando. Para obtener una lista de todas las regiones que se pueden especificar, consulte [Regiones y puntos de enlace de AWS](https://docs.aws.amazon.com/general/latest/gr/rande.html) en la *Referencia general de Amazon Web Services*.

**--version**  
Modificador booleano que muestra la versión actual del programa de la AWS CLI que se está ejecutando.

## Usos comunes de las opciones de la línea de comandos
<a name="cli-configure-options-common"></a>

Entre los usos habituales de las opciones de la línea de comandos se incluyen la comprobación de sus recursos en varias regiones de AWS y el cambio del formato de salida para obtener una mayor legibilidad o facilidad de uso al generar scripts. En los siguientes ejemplos, ejecutamos el comando **describe-instances** en cada región hasta que encontremos en qué región se encuentra la instancia. 

```
$ aws ec2 describe-instances --output table --region us-west-1
-------------------
|DescribeInstances|
+-----------------+
$ aws ec2 describe-instances --output table --region us-west-2
------------------------------------------------------------------------------
|                              DescribeInstances                             |
+----------------------------------------------------------------------------+
||                               Reservations                               ||
|+-------------------------------------+------------------------------------+|
||  OwnerId                            |  012345678901                      ||
||  ReservationId                      |  r-abcdefgh                        ||
|+-------------------------------------+------------------------------------+|
|||                                Instances                               |||
||+------------------------+-----------------------------------------------+||
|||  AmiLaunchIndex        |  0                                            |||
|||  Architecture          |  x86_64                                       |||
...
```