シェルワンライナー160本ノック問題80
問題80 2進数から文字列を復元
問題のファイルは
https://github.com/shellgei/shellgei160
からダウンロードできる。
xxd の使い方に関して少し混乱していたことが解決したのは収穫だった。
解答例は
cat zeroone | sed 's/^/obase=16;ibase=2;/' | bc | xxd -p -r
となる。xxd -r で16進ダンプからバイナリへ戻すとのことだったが、このバイナリの意味をテキストで記録されたバイナリと勘違いしていた。バイナリへ戻すというのは元のファイルに戻す(あらゆるファイルというのはそもそもバイナリでできている)という意味だ。テキストで記録された16進ダンプ⇔普通のファイルを行き来するということ。