> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Variáveis de ambiente pela CLI

> Liste, defina, remova ou substitua as variáveis de ambiente de uma aplicação da Square Cloud com squarecloud app env, inclusive a partir de um arquivo .env.

O `squarecloud app env` gerencia as variáveis de ambiente de uma aplicação. Como a sua aplicação as lê está explicado em [Variáveis de ambiente](/pt-br/platform/environment-variables).

O `list` recebe o ID da aplicação como argumento. O `set`, o `remove` e o `replace` usam os argumentos para as variáveis, então recebem o ID com `--app`. Os dois são opcionais: veja [como a CLI encontra sua aplicação](/pt-br/cli-reference/quickstart#como-a-cli-encontra-sua-aplicação).

## `squarecloud app env list`

```bash Uso theme={"system"}
squarecloud app env list [appID] [--json]
```

Imprime cada variável como `KEY=value`, em ordem alfabética.

```bash theme={"system"}
squarecloud app env list <appID> --json
# Imprime as variáveis como um objeto JSON.
```

## `squarecloud app env set`

```bash Uso theme={"system"}
squarecloud app env set KEY=VALUE... [--from-file <path>] [--app <appID>]
```

| Flag | Descrição |
| - | - |
| `--from-file <path>` | Lê as variáveis de um arquivo no estilo `.env`. Os argumentos `KEY=VALUE` substituem as mesmas chaves do arquivo. |
| `--app <appID>` | A aplicação a alterar. |

Define uma ou mais variáveis e mantém as outras como estão.

```bash theme={"system"}
squarecloud app env set NODE_ENV=production PORT=80
# Define duas variáveis na aplicação da linha ID=.
```

```bash theme={"system"}
squarecloud app env set --from-file .env --app <appID>
# Define todas as variáveis de um arquivo .env.
```

```bash Saída theme={"system"}
✓ Environment variables set: 2
```

## `squarecloud app env remove`

```bash Uso theme={"system"}
squarecloud app env remove KEY... [--app <appID>]
squarecloud app env remove --all [--app <appID>] [-y]
```

**Aliases:** `delete`, `unset`

| Flag | Descrição |
| - | - |
| `--all` | Remove todas as variáveis da aplicação, após uma confirmação. Não pode ser combinada com nomes de variáveis. |
| `-y`, `--yes` | Pula a confirmação do `--all`. |
| `--app <appID>` | A aplicação a alterar. |

```bash theme={"system"}
squarecloud app env remove API_KEY OLD_FLAG
# Remove duas variáveis.
```

## `squarecloud app env replace`

```bash Uso theme={"system"}
squarecloud app env replace KEY=VALUE... [--from-file <path>] [--app <appID>] [-y]
```

| Flag | Descrição |
| - | - |
| `--from-file <path>` | Lê as variáveis de um arquivo no estilo `.env`. |
| `-y`, `--yes` | Pula a confirmação. |
| `--app <appID>` | A aplicação a alterar. |

Substitui o conjunto **inteiro** de variáveis pelas que você passa: as variáveis que você não listar são removidas. Ele pede uma confirmação `y/N` antes e precisa de pelo menos uma variável. Para remover todas as variáveis, use `remove --all`.

```bash theme={"system"}
squarecloud app env replace --from-file .env --app <appID> -y
# Deixa as variáveis da aplicação exatamente iguais às do .env, sem perguntar.
```

## Valores com espaços e caracteres especiais

A sua aplicação carrega as variáveis por meio de um shell. Para que ela receba cada valor exatamente como você digitou, a CLI coloca entre aspas os valores que têm espaços ou caracteres como `$`, `&`, `;` ou `#`. O `env list` então mostra o valor salvo com essas aspas.

```bash theme={"system"}
squarecloud app env set 'GREETING=hello world'
# A aplicação lê: hello world
```

Um valor que você envolve em um par de aspas é enviado como está, para que o shell da sua aplicação possa expandi-lo. Use isso para montar um valor a partir de outra variável:

```bash theme={"system"}
squarecloud app env set 'API_URL="${HOST}:3000"'
# A aplicação lê o valor de HOST seguido de :3000.
```

## O formato do `--from-file`

* Um `KEY=VALUE` por linha. Linhas em branco, linhas que começam com `#` e linhas sem `=` são ignoradas.
* Um prefixo `export ` é aceito, e um BOM UTF-8 no início do arquivo é ignorado.
* Um valor entre aspas iguais é lido exatamente como está entre elas.
* Em um valor sem aspas, tudo a partir de ` #` é comentário: `A=foo #bar` define `foo`. Coloque entre aspas os valores que contêm ` #`.
* Sequências de escape e valores em várias linhas não são suportados.

## Relacionados

| Comando | API | SDK JavaScript | VS Code |
| - | - | - | - |
| `list` | [`GET .../envs`](/pt-br/api-reference/endpoint/apps/envs/get) | [`api.apps.envs.get()`](/pt-br/sdks/js/environment_variables) | [Variáveis de ambiente](/pt-br/vscode-extension/features#aplicações) |
| `set` | [`POST .../envs`](/pt-br/api-reference/endpoint/apps/envs/add_n_edit) | [`api.apps.envs.set()`](/pt-br/sdks/js/environment_variables) | [Variáveis de ambiente](/pt-br/vscode-extension/features#aplicações) |
| `remove` | [`DELETE .../envs`](/pt-br/api-reference/endpoint/apps/envs/remove) | [`api.apps.envs.delete()`](/pt-br/sdks/js/environment_variables) | [Variáveis de ambiente](/pt-br/vscode-extension/features#aplicações) |
| `replace` | [`PUT .../envs`](/pt-br/api-reference/endpoint/apps/envs/overwrite) | [`api.apps.envs.replace()`](/pt-br/sdks/js/environment_variables) | |
