Saya mencoba melakukan beberapa trik dengan dd. Saya pikir akan mungkin untuk menyimpan beberapa nilai hexa dalam variabel yang disebut "header" untuk menyalurkannya ke dd.
Langkah pertama saya tanpa variabel adalah ini:
$ echo -ne "\x36\xc9\xda\x00\xb4" |dd of=hex
$ hd hex
00000000 36 c9 da 00 b4 |6....|
00000005
Setelah itu saya coba ini:
$ header=$(echo -ne "\x36\xc9\xda\x00\xb4")
$ echo -n $header | hd
00000000 36 c9 da b4 |6...|
00000004
Seperti yang Anda lihat, saya kehilangan \x00
nilai saya dalam $header
variabel. Adakah yang punya penjelasan untuk perilaku ini? Ini membuatku gila.
header="$(echo -ne "\x36\xc9\xda\x00\xb4")"; echo -n "$header" | hd
namun ini hanya memberikan hasil yang sama.
header="\x36\xc9\xda\x00\xb4"; echo -n "$header" | hd
, tetapi tidak sama dengan menyimpan bentuk yang dapat dibaca manusia.
bash: warning: command substitution: ignored null byte in input
.