# query decompile

[Asociación] Lee una representación intermedia de una consulta compilada desde un archivo .qlo.

> [!NOTE]
> En este contenido se describe la versión más reciente de CodeQL CLI. Para obtener más información sobre esta versión, consulta https://github.com/github/codeql-cli-binaries/releases.
>
> Para ver detalles de las opciones disponibles para este comando en una versión anterior, ejecuta el comando con la opción <span style="white-space: nowrap;">`--help`</span> en el terminal.

## Sinopsis

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

## Description

              \[Asociación] Lee una representación intermedia de una consulta compilada desde un archivo .qlo.

El código se escribirá en la salida estándar, a menos que se especifique la opción `--output`.

## Options

### Opciones principales

#### `<file>`

              \[Obligatorio] Archivo QLO del que se va a leer.

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

El archivo donde se va a escribir la salida deseada.

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

Tipo de la representación intermedia que se va a leer. Las opciones son:

              `dil`: representación intermedia de Datalog.

              `ra`: representación intermedia del álgebra relacional. Se usa en la fase de evaluación de consultas.

              `bytecode`: muestra el código de bytes sin procesar (sin comprimir) del archivo .qlo.
Resulta útil sobre todo para depurar el compilador o el evaluador.

El valor predeterminado es `dil` si la consulta se ha compilado con `--include-dil-in-qlo` y `ra` en caso contrario.

### Opciones comunes

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

Muestra este texto de ayuda.

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

              \[Avanzado] Asigna la opción a la JVM que ejecuta el comando.

(Ten en cuenta que las opciones que contienen espacios no se administrarán correctamente).

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

Aumenta incrementalmente el número de mensajes de progreso impresos.

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

Reduce incrementalmente el número de mensajes de progreso impresos.

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

              \[Avanzado] Establece explícitamente el nivel de detalle en errores, advertencias, progreso, progreso+, progreso++, progreso+++. Invalida `-v` y `-q`.

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

              \[Avanzado] Escribe registros detallados en uno o varios archivos del directorio especificado, con nombres generados que incluyen marcas de tiempo y el nombre del subcomando en ejecución.

(Para escribir un archivo de registro con un nombre sobre el que tienes control total, proporciona `--log-to-stderr` y redirige stderr como quieras).

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

              \[Avanzado] Controla la ubicación de los datos en caché del disco que se conservarán entre varias ejecuciones de la CLI, como paquetes QL descargados y planes de consulta compilada. Si no se define explícitamente, se toma como predeterminado un directorio denominado `.codeql` en el directorio principal del usuario, que se creará en caso de que no exista.

Disponible desde la versión `v2.15.2`.