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 --help
no terminal.
Sinopse
codeql bqrs interpret --format=<format> --output=<output> -t=<String=String> [--threads=<num>] [--source-archive=<sourceArchive>] [--source-location-prefix=<sourceLocationPrefix>] <options>... -- <bqrs-file>
codeql bqrs interpret --format=<format> --output=<output> -t=<String=String> [--threads=<num>] [--source-archive=<sourceArchive>] [--source-location-prefix=<sourceLocationPrefix>] <options>... -- <bqrs-file>
Descrição
[Conexão] Interprete os dados em um só BQRS.
Um comando que interpreta um só arquivo BQRS de acordo com os metadados fornecidos e gera a saída no formato especificado.
Opções
Opções principais
<bqrs-file>
[Obrigatório] O arquivo BQRS a ser interpretado.
--format=<format>
[Obrigatório] O formato no qual os resultados serão gravados. Um destes:
csv
: valores formatados separados por vírgula, incluindo colunas com metadados de regra e de alerta.
sarif-latest
: SARIF (Static Analysis Results Interchange Format), um formato baseado em JSON usado para descrever os resultados da análise estática. Essa opção de formato usa a versão mais recente com suporte (v2.1.0). Essa opção não é adequada para uso na automação, pois produzirá diferentes versões do SARIF entre diferentes versões do CodeQL.
sarifv2.1.0
: SARIF v2.1.0.
graphtext
: um formato textual que representa um grafo. Compatível apenas com consultas com o grafo @kind.
dgml
: Directed Graph Markup Language, um formato baseado em XML para a descrição de grafos. Compatível apenas com consultas com o grafo @kind.
dot
: linguagem DOT do Graphviz, um formato baseado em texto para a descrição de grafos.
Compatível apenas com consultas com o grafo @kind.
-o, --output=<output>
[Obrigatório] O caminho de saída no qual os resultados serão gravados. Para formatos de grafo, esse deve ser um diretório, e o resultado (ou os resultados, caso o comando dê suporte à interpretação de mais de uma consulta) será gravado nesse diretório.
-t=<String=String>
[Obrigatório] Um par de valores de chave de metadados de consulta. Repita isso para cada parte dos metadados. No mínimo, as chaves 'kind' e 'id' precisam ser especificadas. As chaves não precisam ser prefixadas com @.
--max-paths=<maxPaths>
O número máximo de caminhos a serem produzidos para cada alerta com caminhos. (Padrão: 4)
--[no-]sarif-add-file-contents
[Somente formatos SARIF] Inclua o conteúdo completo do arquivo para todos os arquivos referenciados em, pelo menos, um resultado.
--[no-]sarif-add-snippets
[Somente formatos SARIF] Inclua snippets de código para cada local mencionado nos resultados, com duas linhas de contexto antes e depois do local relatado.
--[no-]sarif-add-query-help
[Somente formatos SARIF] [Preterido] Inclua ajuda de consulta Markdown para todas as consultas. Isso carrega a ajuda de consulta para /path/to/query.ql por meio do arquivo /path/to/query.md. Se esse sinalizador não for fornecido, o comportamento padrão será incluir ajuda apenas para consultas personalizadas, ou seja, aquelas em pacotes de consulta que não são na forma `codeql/<lang&rt;-queries`. Essa opção não tem nenhum efeito quando transmitida para codeql bqrs interpret.
--sarif-include-query-help=<mode>
[Somente formatos SARIF] Especifique se deseja incluir ajuda de consulta na saída SARIF. Um destes:
always
: Incluir ajuda de consulta para todas as consultas.
custom_queries_only
(padrão): inclua ajuda de consulta apenas para consultas personalizadas, ou seja, aquelas em pacotes de consulta que não são do formulário `codeql/<lang&rt;-queries`.
never
: Não inclua ajuda de consulta para quaisquer consultas.
Essa opção não tem nenhum efeito quando transmitida para codeql bqrs interpret.
Disponível desde v2.15.2
.
--no-sarif-include-alert-provenance
[[Avançado] [[Somente formatos SARIF] Não inclua informações de proveniência de alerta na saída SARIF.
Disponível desde v2.18.1
.
--[no-]sarif-group-rules-by-pack
[Somente formatos SARIF] Coloque o objeto de regra para cada consulta no pacote QL correspondente na propriedade <run>.tool.extensions
. Essa opção não tem nenhum efeito quando transmitida para codeql bqrs interpret.
--[no-]sarif-multicause-markdown
[Somente formatos SARIF] Para alertas que têm várias causas, inclua-os como uma lista de itens formatados em Markdown na saída, além de uma cadeia de caracteres sem formatação.
--no-sarif-minify
[Somente formatos SARIF] Produza uma saída SARIF impressa bonita. Por padrão, a saída SARIF é minificada para reduzir o tamanho do arquivo de saída.
--sarif-run-property=<String=String>
[Somente formatos SARIF] Um par de valores de chave a ser adicionado ao recipiente de propriedades 'run' do SARIF gerado. Pode ser repetido.
--no-group-results
[Somente formatos SARIF] Produz um resultado por mensagem, em vez de um resultado por local exclusivo.
--csv-location-format=<csvLocationFormat>
O formato no qual os locais serão produzidos na saída CSV. Um dos seguintes: uri, line-column ou offset-length. (Padrão: linha-coluna)
--dot-location-url-format=<dotLocationUrlFormat>
Uma cadeia de caracteres de formato que define o formato no qual as URLs de local do arquivo serão produzidas na saída DOT. Os seguintes espaços reservados podem ser usados: {path} {start:line} {start:column} {end:line} {end:column}, {offset} e {length}
--[no-]sublanguage-file-coverage
[Somente para GitHub.com e GitHub Enterprise Server v3.12.0+] Use informações de cobertura de arquivo de sub-linguagem. Isso calcula, exibe e exporta informações de cobertura de arquivos separadas para linguagens que compartilham um extrator CodeQL como C e C++, Java e Kotlin e JavaScript e TypeScript.
Disponível desde v2.15.2
.
--sarif-category=<category>
[Somente formatos SARIF] [Recomendado] Especifique uma categoria para essa análise incluir na saída SARIF. Uma categoria pode ser usada para distinguir várias análises executadas no mesmo commit e repositório, mas em diferentes linguagens ou partes do código.
Se você analisar a mesma versão de uma base de código de várias maneiras diferentes (por exemplo, para diferentes linguagens) e carregar os resultados no GitHub para apresentação na verificação de código, esse valor deverá ser diferente entre cada uma das análises, o que informa à verificação de código de que as análises suplementam umas às outras em vez de substituí-las. (Os valores devem ser consistentes entre as execuções da mesma análise para diferentes versões da base de código.)
Esse valor aparecerá (com uma barra à direita acrescentada se ainda não estiver presente) como a propriedade <run>.automationDetails.id
.
-j, --threads=<num>
O número de threads usados para os caminhos de computação.
O valor padrão é 1. Você pode transmitir 0 para usar um thread por núcleo no computador ou -N para manter N núcleos não utilizados (com a exceção de que ainda será usado, pelo menos, um thread).
--column-kind=<columnKind>
[Somente SARIF] O tipo de coluna usado para interpretar as colunas de local. Um dos seguintes: utf8, utf16, utf32 ou bytes.
--[no-]unicode-new-lines
[Somente SARIF] Indica se os caracteres de nova linha Unicode LS (Separador de Linha, U+2028) e PS (Separador de Parágrafo, U+2029) são considerados como novas linhas quando os números de linha de local são interpretados.
Opções de arquivo de origem – Precisam ser fornecidas juntas ou não devem ser fornecidas
-s, --source-archive=<sourceArchive>
O diretório ou o arquivo zip que contém o arquivo de origem.
-p, --source-location-prefix=<sourceLocationPrefix>
O caminho do arquivo no sistema de arquivos original em que o código-fonte foi armazenado.
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 incrementalmente 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
.