多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# 使用bash shell ## 将数据写入文件 ### 简单用法 ``` #!/bin/bash #[shell] #bash实现二进制文件的读写 echo "开始执行 hexfile.sh 脚本" echo 001122334455 | xxd -r -ps > hexfile.hex ``` 上述参数说明: ``` xxd // xxd 命令用于用二进制或十六进制显示文件的内容 -r // 把xxd的十六进制输出内容转换回原文件的二进制内容 -ps // 以 postscript的连续十六进制转储输出,这也叫做纯十六进制转储 ``` ` `我们是使用Okteta查看文件`hexfile.hex`如下所示: ![](https://img.kancloud.cn/ad/0a/ad0a09c8285f4a6d8ef95ce852848dc2_685x164.png) ` `可以看到前面十六进制显示的内容正好是我们写入的内容。 ### 朴素用法 ``` echo -e -n "\x11\x22" > hexfile.hex ``` 文件结果如下: ![](https://img.kancloud.cn/eb/87/eb8713310d4cf87e78cec3c37870e722_697x176.png) 说明 ``` -e // 表示使能反斜杠转义,这样遇到\\就会转义为二进制 -n // 不添加行尾换行标识,因为默认的 echo 会在末尾添加 0x0A 双引号表示要转义的字符串,\x表示十六进制,\0NNN 表示八进制 ```