Sed 要通过dclfdd或拆分来拆分十六进制文件?

Sed 要通过dclfdd或拆分来拆分十六进制文件?,sed,split,Sed,Split,我正在通过同步进度监控解决有关拆分的挑战。 假设报头的可检测字段是十六进制的FA 按字段拆分的步骤 所述数据的二进制到二进制ascii bin2hex 通过gsed's/FA/\0/100g' 使用pseudocodesplit-p'\0'input.txt对标记\0的位置进行拆分,这将在后面讨论 如何转换bin2hex?无法访问您共享的链接 但是,您可以使用bc(bash计算器)实用程序进行转换。。。也许会有更好的方法(我不知道:-) 对于十六进制到二进制: v=F; echo "ibas

我正在通过同步进度监控解决有关拆分的挑战。 假设报头的可检测字段是十六进制的
FA

按字段拆分的步骤

  • 所述数据的二进制到二进制ascii
  • bin2hex
  • 通过
    gsed's/FA/\0/100g'
  • 使用pseudocode
    split-p'\0'input.txt对标记
    \0
    的位置进行拆分,这将在后面讨论

如何转换bin2hex?

无法访问您共享的链接

但是,您可以使用
bc
(bash计算器)实用程序进行转换。。。也许会有更好的方法(我不知道:-)

对于十六进制到二进制:

v=F; echo "ibase=16;obase=2;$(echo $v)" | bc
这将把
0xF
转换为
1111b

ibase
是输入基本系统(
16=>hex
obase
是输出基本系统(
2=>binary

对于二进制到十六进制:

v=1111; echo "ibase=2;obase=10000;$(echo $v)" | bc
这将把
1111b
转换为
0xF


ibase
是输入基本系统(
2=>binary
obase
是输出的基本系统(
10000=>hex
)(
obase
应该使用
ibase
作为基本系统,我们的
obase
10000b=16十进制=>hex
)。

检查$(echo
sed'Users/masi/Dropbox/123/r3.raw
)的输出。。。它应该是一个二进制值。。。当你试图从二进制转换为十六进制时…这种转换的效率有多高?从定义一个变量,到回显,再到bc,每次都调用shell,这可能会占用很多资源。我在下面的线程中对执行此任务的单个工具进行了更好的关注