web-dev-qa-db-ja.com

ファイルの16進数で最初の10バイトを印刷する方法は?

Linuxのmintコマンドプロンプトから、ファイルの最初の10バイトを16進数で出力する必要があります。

誰か助けてもらえますか?

ありがとう

10
techfun

私はここに来て、追加するものは何もない、そして質問の最初の1分間に同じ1ライナーを何人の人が投稿できるかという演習になると考えて、3つの回答を見ました。しかし、新しいhexdumpツールを使用している人を見つけました。そのコマンドはway 2文字より長いです。 The One True Base(base 8)以外のベースをほのめかしています。そして、その名前からそれが何をするかさえ明らかです。明らかにこれはUnixのやり方ではありません。

これがod( "8進ダンプ")の喜びです。

Linux Mintで見つかる最初のGNU:

od --format=x1 --read-bytes=10 foo

BSDですが、皮肉なことに、実際にはhexdumpと同じプログラムです。

od -t x1 -N 10 foo
11
JdeBP

オプション-l len | -len lenは、<len>オクテットの書き込み後に停止するためのものです。

次のようなファイルで使用します。

xxd -l 10 file

または

hexdump -C -n 10 file

ここで、-n lenはxxdの-lオプションと同じです。

11
erik

そのためにxxdを使用できます。

$ xxd -ps -l 10 FILENAME
546865204d4954204c69

これは最初の10バイト(-l 10)のFILENAMEのプレーン16進形式(-ps)。

5
Daniel Beck