gpt4 book ai didi

bash - 如何使用 Bash 创建二进制文件?

转载 作者:行者123 更新时间:2023-11-29 08:48:58 25 4
gpt4 key购买 nike

如何在 Bash 中创建一个包含二进制值的二进制文件?

喜欢:

hexdump testfile

0000000 0100 0302 0504 0706 0908 0b0a 0d0c 0f0e
0000010 1110 1312 1514 1716 1918 1b1a 1d1c 1f1e
0000020 2120 2322 2524 2726 2928 2b2a 2d2c 2f2e
0000030 ....

在 C 中,我这样做:

fd = open("testfile", O_RDWR | O_CREAT);
for (i=0; i< CONTENT_SIZE; i++)
{
testBufOut[i] = i;
}

num_bytes_written = write(fd, testBufOut, CONTENT_SIZE);
close (fd);

这就是我想要的:

#! /bin/bash
i=0
while [ $i -lt 256 ]; do
h=$(printf "%.2X\n" $i)
echo "$h"| xxd -r -p
i=$((i-1))
done

最佳答案

只有一个字节不能作为 Bash 命令行中的参数传递:0

对于任何其他值,您可以将其重定向。很安全。

echo -n $'\x01' > binary.dat
echo -n $'\x02' >> binary.dat
...

对于值0,还有另一种方式输出到文件

dd if=/dev/zero of=binary.dat bs=1c count=1

要将其追加到文件中,请使用

dd if=/dev/zero oflag=append conv=notrunc of=binary.dat bs=1c count=1

关于bash - 如何使用 Bash 创建二进制文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8521240/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com