

# Estrutura do comando na AWS CLI
<a name="cli-usage-commandstructure"></a>

Este tópico aborda como o comando da AWS Command Line Interface (AWS CLI) é estruturado e como usar comandos de espera.

**Topics**
+ [Estrutura do comando](#cli-usage-commandstructure-structure.title)
+ [Comandos de espera](#cli-usage-commandstructure-wait)

## Estrutura do comando
<a name="cli-usage-commandstructure-structure.title"></a>

A AWS CLI usa uma estrutura em várias partes na linha de comando que deve ser especificada nesta ordem:

1. A chamada básica para o programa `aws`.

1. O *comando* de nível superior que normalmente corresponde a um serviço do AWS compatível com a AWS CLI.

1. O *subcomando* que especifica a operação a ser realizada.

1. As opções gerais da AWS CLI ou os parâmetros necessários para a operação. Você pode especificá-los em qualquer ordem, desde que siga as três primeiras partes. Se um parâmetro exclusivo for especificado várias vezes, apenas o *último valor* se aplicará.

```
$ aws <command> <subcommand> [options and parameters]
```

Parâmetros pode levar vários tipos de valores de entrada, como números, sequências de caracteres, listas, mapas e estruturas de JSON. O que é compatível depende do comando e do subcomando que você especificar.

### Exemplos
<a name="cli-usage-commandstructure-structure-example"></a>

**Amazon S3**

O exemplo a seguir lista todos os seus buckets do Amazon S3.

```
$ aws s3 ls
2018-12-11 17:08:50 amzn-s3-demo-bucket1
2018-12-14 14:55:44 amzn-s3-demo-bucket2
```

Para obter mais informações sobre os comandos do Amazon S3, consulte [https://docs.aws.amazon.com/cli/latest/reference/s3/index.html](https://docs.aws.amazon.com/cli/latest/reference/s3/index.html) na *Referência de comandos da AWS CLI*.

**AWS CloudFormation**

O exemplo de comando [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/create-change-set.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/create-change-set.html) a seguir altera o nome da pilha cloudformation para *my-change-set*.

```
$ aws cloudformation create-change-set --stack-name my-stack --change-set-name my-change-set
```

Para obter mais informações sobre os comandos AWS CloudFormation, consulte [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/index.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/index.html) na *Referência de comandos da AWS CLI*.

## Comandos de espera
<a name="cli-usage-commandstructure-wait"></a>

Alguns serviços da AWS contam com comandos `wait`. Qualquer comando que usa `aws wait` normalmente espera até que um comando seja concluído antes de passar para a próxima etapa. Isso é especialmente útil para comandos em várias partes ou scripts, pois você pode usar um comando wait para impedir o avanço para etapas subsequentes se o comando wait falhar.

A AWS CLI usa uma estrutura em várias partes na linha de comando para o comando `wait` que deve ser especificada nesta ordem:

1. A chamada básica para o programa `aws`.

1. O *comando* de nível superior que normalmente corresponde a um serviço do AWS compatível com a AWS CLI.

1. O comando `wait`.

1. O *subcomando* que especifica a operação a ser realizada.

1. As opções gerais da CLI ou os parâmetros necessários para a operação. Você pode especificá-los em qualquer ordem, desde que siga as três primeiras partes. Se um parâmetro exclusivo for especificado várias vezes, apenas o *último valor* se aplicará.

```
$ aws <command> wait <subcommand> [options and parameters]
```

Parâmetros pode levar vários tipos de valores de entrada, como números, sequências de caracteres, listas, mapas e estruturas de JSON. O que é compatível depende do comando e do subcomando que você especificar.

**nota**  
Nem todos os serviços da AWS comportam comandos `wait`. Consulte o [AWS CLI versão 2](https://docs.aws.amazon.com/cli/latest/reference/index.html) para ver se seu serviço comporta comandos `wait`.

### Exemplos
<a name="cli-usage-commandstructure-wait-example"></a>

**AWS CloudFormation**

Os exemplos de comando [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/wait/change-set-create-complete.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/wait/change-set-create-complete.html) a seguir pausam e continuam somente depois que o comando pode confirmar que o conjunto de alterações *my-change-set* na pilha *my-stack* está pronto para ser executado.

```
$ aws cloudformation wait change-set-create-complete --stack-name my-stack --change-set-name my-change-set
```

Para obter mais informações sobre os comandos da AWS CloudFormation `wait`, consulte [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/wait/index.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/wait/index.html) na *Referência de comandos da AWS CLI*.

**AWS CodeDeploy**

Os exemplos de comando [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/wait/change-set-create-complete.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/wait/change-set-create-complete.html) pausam até a implantação de *d-A1B2C3111* ser concluída com êxito.

```
$ aws deploy wait deployment-successful --deployment-id d-A1B2C3111
```

Para obter mais informações sobre os comandos da AWS CodeDeploy `wait`, consulte [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/wait/index.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/wait/index.html) na *Referência de comandos da AWS CLI*.