ASCIIとして保存されたバイナリデータをバイナリに変換

ASCIIとして保存されたバイナリデータをバイナリに変換

次のファイルに 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                                  ...
$ 

関連情報