Fq

From COPTR
Revision as of 21:11, 19 December 2022 by Wader (talk | contribs) (→‎Description)
Jump to navigation Jump to search
Tool, language and decoders for working with binary data.
Homepage:https://github.com/wader/fq
Source Code:https://github.com/wader/fq
License:MIT and BSD
Cost:Free and open source
Platforms:macOS, Linux and Winodows
Language:golang
Input Formats:CSV (Comma Separated Values), XML, PNG, TIFF, SVG, JPEG, GIF, JSON, YAML, TOML, MP4, MP3, Matroka
Output Formats:XML, JSON, YAML, TOML, CSV
Function:Access,Validation,Binary & Hexidecimal Editing,Discovery,Repair,Quality Assurance,Policy,File Format Identification,File Recovery,Forensic,Metadata Extraction
Content type:Binary Data,Container,Metadata




Description

fq is inspired by the well known jq tool and language and allows you to work with binary formats the same way you would using jq. In addition it can present data like a hex viewer, transform, slice and concatenate binary data. It also supports nested formats and has an interactive REPL with auto-completion.

It was originally designed to query, inspect and debug media codecs and containers like mp4, flac, mp3, jpeg. But has since then been extended to support a variety of formats like executables, packet captures (with TCP reassembly) and serialization formats like JSON, YAML, XML, ASN1 BER, Avro, CBOR, protobuf. In addition it also has functions to work with URL:s, convert to/from hex, number bases, search for things etc.

In summary it aims to be jq, hexdump, dd and gdb for files combined into one.

User Experiences