· 1分で読了
xxd の簡単な使い方メモ
この記事は中国語から自動翻訳されたものです。翻訳によりニュアンスが失われている場合があります。
xxd はバイナリファイルを確認できる Linux ツールだ。
なぜわざわざバイナリファイルを見るのか?
- コンパイルされたプログラムが自分の想定通りか確認するため
- 画像や動画のファイル内容を確認するため
- 純粋な好奇心
xxd の使い方
xxd filename
実行すると、ファイルの内容がこのように出力される:
00000000: 4500 6d00 7000 7400 7900 0000 0000 0000 E.m.p.t.y.......
00000010: 0000 0000 0000 0000 0000 0000 0000 0000 ................
大きく3つのエリアに分けることができる。1つ目は hex dump のアドレスで、1行につき(デフォルトで)16文字(バイト)がダンプされる。2つ目はファイルの内容、一番右はファイルの値の ASCII 表示で、表示できない文字がある場合は . が出力される。
xxd -r filename
このコマンドを使えば、バイナリの元ファイルへと復元できる。
いくつかの組み合わせ技
xxd filename | vim -:vimでバイナリファイルを見るvim filenameそして中で:%!xxd -r:vim を使ってバイナリファイルを編集できるxxd filename > dump.hex:まあ…直接ファイルに書き出して、diffと組み合わせて使える
関連記事
- 測定が目標になるとき:窓税からPull Request数まで かつて僕は小さなツールを自作し、四半期で自分がどれだけPRに貢献したか、レビューコメントをどれだけ残したか、チケットをどれだけ消化したかを集計して、上司にアウトプットを証明しようとしたことがある。上司は淡々と、評価はアウトプットだけで見るものではないと言った。数年後、僕はようやく理解した――測定が目標になるとき、それはもはや良い測定ではなくなるのだ。英国の窓税、ハノイのネズミ駆除の報奨金から、現代のPR数による開発者評価に至るまで、そのメカニズムはまったく同じだ。
- Cloudflare Images を画像ストレージ・変換ソリューションとして使う ウェブページに画像を1枚置くのはフロントエンドにとって最も簡単なことだが、リサイズや各種フォーマットの生成、さらにはトラフィックの負荷に耐えることまで完璧にやろうとすると、実際には一つの包括的なソリューションが必要になる。僕はその後、すべて Cloudflare Images に任せるようになり、オリジナル画像1枚だけを渡すようにしている。
- もう AWS Access Key を使うのはやめよう Access Key は AWS において見落とされがちなセキュリティリスクだ。OIDC と IAM Role を組み合わせることで、GitHub Actions にシークレットを一切保持させることなく、安全に AWS リソースを操作できるようにする。
- データベース主キー:AUTO_INCREMENT、UUID、そしてUUIDv7 バックエンド開発で度々直面する主キーの決定。auto incrementを使うべきか、それともUUIDか?衝突への懸念は?UUIDv7とcreated_at + インデックスの性能差はどれほどか?実際に2,000万件のデータで検証したベンチマークと設計上の意思決定を解説する。