Sto cercando di fare alcuni trucchi con dd. Ho pensato che sarebbe stato possibile memorizzare alcuni esagoni in una variabile chiamata "header" per reindirizzarlo in dd.
Il mio primo passo senza una variabile è stato questo:
$ echo -ne "\x36\xc9\xda\x00\xb4" |dd of=hex
$ hd hex
00000000 36 c9 da 00 b4 |6....|
00000005
Dopo ciò ho provato questo:
$ header=$(echo -ne "\x36\xc9\xda\x00\xb4")
$ echo -n $header | hd
00000000 36 c9 da b4 |6...|
00000004
Come puoi vedere, ho perso il mio \x00
valore nella $header
variabile. Qualcuno ha una spiegazione per questo comportamento? Questo mi sta facendo impazzire.
header="$(echo -ne "\x36\xc9\xda\x00\xb4")"; echo -n "$header" | hd
tuttavia dovrebbe essere solo questo a dare lo stesso risultato.
header="\x36\xc9\xda\x00\xb4"; echo -n "$header" | hd
, ma non è la stessa cosa che sta memorizzando la forma leggibile dall'uomo.
bash: warning: command substitution: ignored null byte in input
.