如何使用linux命令将文本文件转换为二进制文件

aMa*_*aMa 11 unix linux shell command-line

我有文本(字符串)格式的二进制的十六进制代码.如何使用像cat和echo这样的linux命令将其转换为二进制文件?

我知道命令跟随命令创建二进制test.bin.但是如果这个十六进制代码在另一个.txt文件中呢?如何"捕捉"文本文件的内容以"回显"并生成二进制文件?

# echo -e "\x00\x001" > test.bin

101*_*010 24

xxd -r.它将hexdump恢复为其二进制表示.

来源来源

编辑:该-p参数也非常有用.它接受"普通"十六进制值,但忽略空格和行更改.

所以,如果您有这样的纯文本转储:

echo "0000 4865 6c6c 6f20 776f 726c 6421 0000" > text_dump
Run Code Online (Sandbox Code Playgroud)

您可以将其转换为二进制:

xxd -r -p text_dump > binary_dump
Run Code Online (Sandbox Code Playgroud)

然后通过以下方式获得有用的输出:

xxd binary_dump
Run Code Online (Sandbox Code Playgroud)