# descompilar consulta

[Conexão] Leia uma representação intermediária de uma consulta compilada de um arquivo .qlo.

> [!NOTE]
> Este conteúdo descreve a versão mais recente do CodeQL CLI. Para obter mais informações sobre essa versão, confira https://github.com/github/codeql-cli-binaries/releases.
>
> Para ver os detalhes das opções disponíveis para esse comando em uma versão anterior, execute o comando com a opção <span style="white-space: nowrap;">`--help`</span> no terminal.

## Sinopse

```shell copy
codeql query decompile [--output=<file>] <options>... -- <file>
```

## Description

              \[Conexão] Leia uma representação intermediária de uma consulta compilada de um arquivo .qlo.

O código será gravado na saída padrão, a menos que a opção `--output` seja especificada.

## Opções

### Opções principais

#### `<file>`

              \[Obrigatório] Arquivo QLO a ser lido.

#### `-o, --output=<file>`

O arquivo no qual a saída desejada será gravada.

#### `--kind=<kind>`

O tipo de representação intermediária a ser lida. As opções são:

              `dil`: uma representação do Datalog intermediária.

              `ra`: uma representação intermediária de álgebra relacional. Isso é usado pela fase de avaliação da consulta.

              `bytecode`: mostra o código de bytes bruto (descompactado) do arquivo .qlo.
Principalmente útil para depurar o compilador/o avaliador.

O padrão é `dil` se a consulta foi compilada com `--include-dil-in-qlo`, caso contrário, `ra`

### Opções comuns

#### `-h, --help`

Mostre este texto de ajuda.

#### `-J=<opt>`

              \[Avançado] Forneça a opção para a JVM que executa o comando.

(Use-a com cautela, pois as opções que contêm espaços não serão tratadas corretamente.)

#### `-v, --verbose`

Aumente de forma incremental o número de mensagens de progresso impressas.

#### `-q, --quiet`

Diminua incrementalmente o número de mensagens de progresso impressas.

#### `--verbosity=<level>`

              \[Avançado] Defina explicitamente o nível de detalhamento como erros, avisos, progresso, progresso+, progresso++ ou progresso+++. Substitui `-v` e `-q`.

#### `--logdir=<dir>`

              \[Avançado] Escreva logs detalhados em um ou mais arquivos no diretório fornecido, com nomes gerados que incluem carimbos de data/hora e o nome do subcomando em execução.

(Para gravar um arquivo de log com um nome sobre o qual você tem controle completo, forneça `--log-to-stderr` e redirecione stderr conforme desejado.)

#### `--common-caches=<dir>`

              \[Avançado] Controle a localização dos dados armazenados em cache no disco que persistirão entre várias execuções da CLI, como pacotes QL baixados e planos de consulta compilada. Se não for definido explicitamente, o padrão corresponde a um diretório intitulado `.codeql` no diretório inicial do usuário; que será criado se ainda não existir.

Disponível desde `v2.15.2`.