ファイルに特定のバイトを書き込むには?

ファイルに特定のバイトを書き込むには?

myfile以下の内容を含むファイルが提供されます。

$ cat myfile
foos

ファイルの16進ダンプは次の内容を提供します。

$ hexdump myfile
6f66 736f 000a

現在、次のようにASCII形式でコンテンツを指定してファイルを作成できます。

$ echo foos > myfile

ASCIIの代わりに正確な16進バイトを提供してファイルを生成できますか?

$ # How can I make this work?
$ echo --fake-hex-option "6f66 736f 000a" > myfile
$ cat myfile
foos

更新:わかりやすくするために、ファイルに少数のバイトを書き込む方法を尋ねることで質問を表現しました。実際には、3バイトではなく多数の16進数をファイルに直接パイプする方法が必要です。

$ cat hexfile
6f66 736f 6f66 736f ...
$ some_utility hexfile > myfile
$ cat myfile
foosfoosfoosfoos...

ベストアンサー1

あなたはそれを使用することができますecho -e

echo -e "\x66\x6f\x6f"

hexdump -Cネットワークバイトオーダーの4バイトワードとして解釈されず、ファイルの内容がバイトオーダーでダンプされることを望みます。

おすすめ記事