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