小编Fra*_*ank的帖子

bash 无法将十六进制值 0x00 存储在变量中

我正在尝试用 dd 做一些技巧。我认为可以将一些十六进制值存储在名为“header”的变量中以将其通过管道传输到 dd。

我没有变量的第一步是这样的:

$ echo -ne "\x36\xc9\xda\x00\xb4" |dd of=hex
$ hd hex

00000000  36 c9 da 00 b4                                    |6....|
00000005
Run Code Online (Sandbox Code Playgroud)

之后我尝试了这个:

$ header=$(echo -ne "\x36\xc9\xda\x00\xb4") 
$ echo -n $header | hd

00000000  36 c9 da b4                                       |6...|
00000004
Run Code Online (Sandbox Code Playgroud)

如您所见,我\x00$header变量中丢失了值。有没有人对这种行为有解释?这真让我抓狂。

linux bash dd shell-script

13
推荐指数
2
解决办法
5722
查看次数

标签 统计

bash ×1

dd ×1

linux ×1

shell-script ×1