Processador leve de JSON para linha de comando, escrito em C portátil e sem dependências de runtime, para recortar, filtrar, mapear e transformar JSON.
- Estrelas
- 10,628
- Forks
- 258
- Issues abertas
- 59
- Último commit
- há 15 horas
O que é?
fq é uma ferramenta de linha de comando para trabalhar com arquivos binários. Ela usa a mesma linguagem de expressões do jq, então você pode aplicar a dados binários consultas que já conhece: basta passar um arquivo por uma consulta para obter campos decodificados em vez de bytes brutos.
A ferramenta vem com um amplo conjunto de decodificadores integrados para formatos como MP4, PNG, ELF, PCAP, TLS, Protobuf e ZIP, além de muitos formatos de mídia e rede. Ela exibe uma visualização estrutural em hexadecimal dos dados decodificados, pode decodificar formatos aninhados (por exemplo, um formato dentro de um contêiner) e permite fatiar e concatenar dados binários no nível de bits. Também inclui um REPL interativo com preenchimento automático.
fq é escrito em Go, funciona em macOS, Linux e Windows e é distribuído por meio do Homebrew, scoop, pacman, Nix e outros gerenciadores de pacotes.
Recursos principais
- 01Consulta arquivos binários usando uma linguagem de expressões compatível com jq.
- 02Vem com decodificadores para vários formatos, incluindo arquivos de mídia, rede e arquivos compactados.
- 03O visualizador estrutural em hexadecimal mostra os campos decodificados junto aos bytes brutos.
- 04Decodifica formatos aninhados e permite fatiar e concatenar dados no nível de bits.
- 05Inclui um REPL interativo com preenchimento automático.
Casos de uso
- Inspecionar a estrutura interna de um arquivo de mídia ou contêiner durante a depuração.
- Analisar capturas de pacotes ou mensagens de protocolo pela linha de comando.
- Extrair campos específicos de formatos binários em scripts de shell.
- Aprender como um formato de arquivo é organizado explorando sua árvore de dados decodificados.
Início rápido
- 1
Instale pelo Homebrew no macOS
brew install wader/tap/fq - 2
Instale pelo Scoop no Windows
scoop install fq - 3
Ou instale com Go (requer Go 1.22 ou posterior)
go install github.com/wader/fq@latest - 4
Execute em um arquivo
fq . file
Antes de usar
- O README informa que o projeto é licenciado sob MIT, mas os metadados listam a licença como NOASSERTION. Verifique a licença antes de reutilizar o projeto.
Em coleções
Tópicos
Perguntas frequentes
- O que é fq?
- Uma ferramenta de linha de comando e linguagem de consulta no estilo jq para inspecionar e consultar formatos de arquivos binários, com decodificadores para dezenas de formatos. fq é uma ferramenta de linha de comando para trabalhar com arquivos binários. Ela usa a mesma linguagem de expressões do jq, então você pode aplicar a dados binários consultas que já conhece: basta passar um arquivo por uma consulta para obter campos decodificados em vez de bytes brutos.
- fq é gratuito? Qual é a licença?
- fq é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
- fq ainda é mantido?
- Manutenção ativa. O último commit de fq foi em 7 de nov. de 2026.
- Para que posso usar fq?
- Inspecionar a estrutura interna de um arquivo de mídia ou contêiner durante a depuração. Analisar capturas de pacotes ou mensagens de protocolo pela linha de comando. Extrair campos específicos de formatos binários em scripts de shell. Aprender como um formato de arquivo é organizado explorando sua árvore de dados decodificados.
- Como instalar fq?
- Instale pelo Homebrew no macOS: brew install wader/tap/fq Instale pelo Scoop no Windows: scoop install fq Ou instale com Go (requer Go 1.22 ou posterior): go install github.com/wader/fq@latest Execute em um arquivo: fq . file
- Onde consigo fq?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/wader/fq
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Um clone do jq em Rust, focado em correção, velocidade e simplicidade, disponível como CLI compatível com jq ou como biblioteca.
Ferramenta de linha de comando que detalha o tamanho de binários Go compilados por pacote, seção e símbolo, com saída em texto, JSON, HTML, SVG, web e interface de terminal.
Ferramenta de linha de comando e linguagem de consulta como jq para selecionar, filtrar e transformar arquivos Markdown.
Ferramenta CLI que cria binários PHP independentes, sem dependências, com as extensões escolhidas para Linux, macOS e Windows.
Pacote declarativo em Go para criar ferramentas de linha de comando, com subcomandos, flags, conclusão no shell e geração de ajuda.