2011-09-03 7 views
22

私はバイナリファイルを持っており、アドレスDEADBEEFの値A2を他の値、たとえばA1に置き換えたいとします。バイナリファイルのいくつかのバイトをddで上書きするには?

ddでどうすればいいですか?これを行う他のツールがある場合は、お勧めします。しかし、私はiPhoneでこれをやろうと思うので、私はほとんどの基本的なUnixツールでしか動かすことができません。

答えて

45
printf '\xa1' | dd conv=notrunc of=somefile bs=1 seek=$((0xdeadbeef)) 
+0

これは自分のマシンでは機能しません。 'somefile'は修正されたバイトの後に切り捨てられます。 – gromain

+0

しかし、 'conv = notrunc'がコマンドの最後にあるときに動作します。 'printf '\ xa1' | dd of = somefile bs = 1 seek = $((0xdeadbeef))conv = notrunc' – gromain

関連する問題