fq二進(jìn)制數(shù)據(jù)解析工具
fq 是一個(gè)用于檢查二進(jìn)制數(shù)據(jù)的工具和解析器。
在大多數(shù)情況下,fq 的工作方式與 jq 相同,但它不是讀取 JSON,而是讀取二進(jìn)制數(shù)據(jù)。結(jié)果是一個(gè) JSON 兼容的結(jié)構(gòu),其中每個(gè)值都有一個(gè)位范圍、符號(hào)解釋并知道如何以有用的方式呈現(xiàn)。
目標(biāo)
- 使二進(jìn)制格式可訪問(wèn)和可查詢(xún)
- 嵌套格式和面向位的解碼
- 快速而舒適的 CLI 工具
- 位和字節(jié)轉(zhuǎn)換和轉(zhuǎn)換
- 程序員的計(jì)算器
用法
基本用法是fq . file
安裝
下載適用于各個(gè)平臺(tái)的發(fā)行版,將其解壓縮并將可執(zhí)行文件移動(dòng)到PATHetc.
Homebrew
# install latest release
brew install wader/tap/fq
從源代碼構(gòu)建
確保你已經(jīng)安裝了 Go 1.17 或更高版本。
要直接從 git 存儲(chǔ)庫(kù)安裝,請(qǐng)執(zhí)行以下操作:
# build and install latest release go install github.com/wader/fq@latest # or build and install latest master go install github.com/wader/fq@master # copy binary to $PATH if needed cp "$(go env GOPATH)/bin/fq" /usr/local/bin
從源目錄構(gòu)建和運(yùn)行測(cè)試:
make test fq # copy binary to $PATH if needed cp fq /usr/local/bin
支持的格式
aac_frame, adts, adts_frame, apev2, av1_ccr, av1_frame, av1_obu, avc_annexb, avc_au, avc_dcr, avc_nalu, avc_pps, avc_sei, avc_sps, bzip2, dns, dns, fmeta_frame, fmeta_frame, fmeta_frame, fmeta_frame, fmeta_frame, fmeta1lacp, fmeta_frame, fc_datablock, flaccp, fmeta_frame, fmetalacp, fmeta_frame, fmetalacp, fmeta_frame flac_streaminfo, gif, gzip, hevc_annexb, hevc_au, hevc_dcr, hevc_nalu, icc_profile, icmp, id3v1, id3v11, id3v2, ipv4_packet, jpeg, json, matroska, mp3, mp3_frame,mpegtegs,mpegt_frame,mpegs_mpegs,mpegs_mpegs_mpegs ogg, ogg_page, opus_packet, pcap, pcapng, png, protobuf, protobuf_widevine, pssh_playready, raw, sll2_packet, sll_packet, tar, tcp_segment, tiff, udp_datagram, vorbis_comment, vcc_comment, vcc_comment, vcc_comment, vcc_comment, vcp8, vcp8, vcp9, vc_frame,
