dd로 몇 가지 트릭을 시도하고 있습니다. 16 진수 값을 "header"라는 변수에 저장하여 dd로 파이프하는 것이 가능하다고 생각했습니다.
변수가없는 첫 번째 단계는 다음과 같습니다.
$ echo -ne "\x36\xc9\xda\x00\xb4" |dd of=hex
$ hd hex
00000000 36 c9 da 00 b4 |6....|
00000005
그 후 나는 이것을 시도했다 :
$ header=$(echo -ne "\x36\xc9\xda\x00\xb4")
$ echo -n $header | hd
00000000 36 c9 da b4 |6...|
00000004
보시다시피 변수 \x00
에서 값을 잃었습니다 $header
. 누구든지이 행동에 대한 설명이 있습니까? 이것은 나를 미치게합니다.
header="$(echo -ne "\x36\xc9\xda\x00\xb4")"; echo -n "$header" | hd
되었지만 동일한 결과를 제공 해야합니다 .
header="\x36\xc9\xda\x00\xb4"; echo -n "$header" | hd
하지만 인간이 읽을 수있는 양식을 저장하는 것과는 다릅니다.
bash: warning: command substitution: ignored null byte in input
.