我有大量二进制数据以 ASCII 文本形式存储在如下文件中:
0b 0000 0001
0b 0000 0000
0b 1111 0001
etc
我如何将其转换为原始二进制比特流,并将其保存到磁盘?
这可以用标准的 UNIX 工具来完成吗?
答案1
尚未完全充实这一点,但请尝试以下操作:
$ cat demo.sh
#!/bin/bash
while read bb nibble1 nibble2
do
byte=$(printf "%s%s" ${nibble1} ${nibble2} )
hexstr=$(printf '\\\\x%02x' $((2#${byte})) )
eval printf "$hexstr"
done < infile > outfile
使用您的示例输入:
$ ./demo.sh
$ xxd outfile
00000000: 0100 f1 ...
$