使用dd命令修改bin文件
使用dd命令修改bin文件
- 1.使用环境
- 2.指令详解
- 3.举例验证
- 4.参考文献
1.使用环境
Linux环境下,使用shell脚本,修改bin文件。比如要在image.bin镜像文件的0xF000地址处填充一段数据。
2.指令详解
dd if=输入文件 of=输出文件 <ibs/obs/bs=块大小> seek=偏移块个数 conv=<关键字>
参数说明:
- if=文件名:输入文件名,默认为标准输入。即指定源文件。
- of=文件名:输出文件名,默认为标准输出。即指定目的文件。
- ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。
obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。
bs=bytes:同时设置读入/输出的块大小为bytes个字节。 - cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小。
- skip=blocks:从输入文件开头跳过blocks个块后再开始复制。
- seek=blocks:从输出文件开头跳过blocks个块后再开始复制。
- count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数。
- conv=<关键字>,关键字可以有以下11种:
conversion:用指定的参数转换文件。
ascii:转换ebcdic为ascii
ebcdic:转换ascii为ebcdic
ibm:转换ascii为alternate ebcdic
block:把每一行转换为长度为cbs,不足部分用空格填充
unblock:使每一行的长度都为cbs,不足部分用空格填充
lcase:把大写字符转换为小写字符
ucase:把小写字符转换为大写字符
swap:交换输入的每对字节
noerror:出错时不停止
notrunc:不截短输出文件
sync:将每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。 - –help:显示帮助信息
- –version:显示版本信息
3.举例验证
我的情况是:需要在镜像文件image.bin的0xF000地址处,插入一段数据,比如数据为0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08
- 我的数据是固定不变的,所以可以事先用VScode的Hex Editer插件把这段数据放进另一个bin文件中,比如test.bin;
- 使用dd指令用test.bin替换掉image.bin的0xF000处的数据
- dd指令只能进行两个文件的替换,所以数据一定要先放进文件中!
执行脚本前image.bin 0xF000地址处全是0xFF:
脚本如下:
#!/bin/bash#seek必须跟十进制数! conv必须跟参数notrunc
dd if=test.bin of=image.bin bs=1 seek=61440 conv=notrunc
- test.bin数输入文件;
- image.bin是输出文件;
- bs=1表示同时设置输入输出块大小为1字节;
- seek=61400表示从输出文件(image.bin)开头跳过61400个块(每个块1字节大小)后再开始复制;
- conv=notrunc表示不截短输出文件;
执行脚本后,image.bin 0xF000地址处被替代:
注意:seek必须跟十进制数! conv必须跟参数notrunc!一定是两个文件的替换!
4.参考文献
菜鸟教程
禁止转载!!!
使用dd命令修改bin文件相关推荐
- linux dd flash,用dd命令生成bin文件,而不用拆flash读取文件
对于linux系统,善用dd命令,可以做到直接生成bin文件,而不用生产拆flash. 1) 读flash,保存成bin文件: ~ $ cat /proc/mtd dev: size erasesiz ...
- Linux运维:ulimit命令修改打开文件的句柄数
文章目录 ulimit命令语法 参数说明: 查看本机设置的参数: ulimit修改打开文件的句柄数 场景 解释: 修改 1.修改file-max 2.修改ulimit的open file 注意事项 d ...
- 20220215-CTF-MISC-BUUCTF-爱因斯坦-binwalk分析图片-dd命令分离ZIP文件--图片属性中寻找密码
MISC-BUUCTF-爱因斯坦 注意:得到的 flag 请包上 flag{} 提交 [1]下载附件,并解压,得到一张图片(misc2.jpg): [2]binwalk分析: 显示里面有一个ZIP压缩 ...
- linux使用dd命令拷贝/生成文件
一.dd命令 1. 作用 Copy a file, converting and formatting according to the operands. 复制一个文件,根据操作数进行转换和格式化. ...
- linux 使用dd命令 写入镜像文件到u盘
1.使用 df -h ,查看一下当前各个磁盘 user@host ~/ $ df -h Filesystem Size Used Avail Use% Mounted on /dev/sda1 119 ...
- bat命令 修改ini文件内容_Linux文件内容查看相关命令
欢迎大家一起学习交流: 正在跳转jq.qq.com Linux系统中使用以下命令来查看文件的内容: cat.tac.nl.more.less.head.tail 你可以使用 man [命令]来查看各 ...
- linux dd新建文件,linux dd命令 创造一个文件
WinForm 窗体属性 窗体美化 WinForm是·Net开发平台中对Windows Form的一种称谓. Windows窗体的一些重要特点如下: 功能强大:Windows窗体可用于设计窗体和可视控 ...
- 每日一个linux 命令-修改linux文件权限命令:chmod
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁 ...
- bat命令 修改ini文件内容_关于mysql使用中文乱码;mysql修改ini文件无法启动;以及mysql卸载无法安装的一系列问题说明。...
今天在用mysql时候出现了中文乱码问题,本人也不是什么大牛,所以就去网上找解决方法,问题是越解决越多,从开始的乱码问题到中间的mysql无法启动,最终到mysql再次安装无法安装,真的是搞的心态都要 ...
- 只需要MTK工程的bin文件、手机和下载线便可以修改各种手机软件
提供样机即可改软件(MTK平台): 手机加各国语言 调 屏(LCD)驱动, 调 字库(FLASH)驱动... 修改输入法.字体大小.快捷键功能 修改开关机画面.待机画面 ...
最新文章
- JPA学习笔记2——JPA高级
- 离职半年了,最近又开始被吐槽输出不够...
- 浙江理工大学2019年5月赛
- css3轮播不用jpuery_js和CSS3 3D轮播图
- centos安装jenkins
- androidstudio在mainactivity实现监听器借口无法抽象_趣操作,Tomcat如何实现一键式启停?
- Python高级——HTTP协议
- 文档下载:《Oracle 20c和19c的新特性解密》
- 推荐系统 | (4) 可解释推荐系统---知其然,知其所以然
- 使用Python发送邮件(图片、表格、附件) 系列三: 发送工作报表之透视表自动刷新数据
- 兼容iOS10 的一些整理
- 思维导图 基础篇(03)思维方法-发散/聚合思维
- “熊猫烧香”主犯:毒王?黑客英雄?
- 板内板间通信协议及接口(四)SPI
- st58服务器装系统,联想 Thinksystem ST58服务器介绍
- Windows server 2012远程桌面会话主机和远程桌面授权。
- 【深入理解计算机系统】第三章重点汇总
- 数据分析入门书籍,你看过几本
- Android百度地图开发之指南针
- Python选择练习题(19~36)