使用linux指令dd替换指定文件中的某一段内容:

原创 用友财务软件  2022-09-22 17:45:10  阅读 390 次 评论 0 条
摘要:

需求产生在需要替换固件内容中某一段检验数据 然后我脑海中依稀是记得linux里面有指令应该是可以高效完成这个工作的 但是一番检索我还是没找,可能是我关键字设置得不太对(替换 地址 linux 指令

本文主要分享【】,技术文章【使用linux指令dd替换指定文件中的某一段内容】为【橙木】投稿,如果你遇到相关问题,请看以下文章。

需求产生在需要替换固件内容中某一段检验数据 然后我脑海中依稀是记得linux里面有指令应该是可以高效完成这个工作的
但是一番检索我还是没找,可能是我关键字设置得不太对(替换 地址 linux 指令 文件,水一下关键字方便和我一样这样子检索的人能够看到)

指令上场

dd(disk dump)
功能:用指定size的块去拷贝一个文件,在拷贝时可以进行指定输出方式和设定

基本参数说明

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=conversion:用指定的参数转换文件。
ascii:转换ebcdic为ascii ebcdic:转换ascii为ebcdic ibm:转换ascii为alternate
ebcdic block:把每一行转换为长度为cbs,不足部分用空格填充 unblock:使每一行的长度都为cbs,不足部分用空格填充
lcase:把大写字符转换为小写字符 ucase:把小写字符转换为大写字符 swab:交换输入的每对字节 noerror:出错时不停止
notrunc:不截短输出文件 sync:将每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐

完成拷贝替换内容到指定文件指令

dd if=输入文件(即要写入的数据文件) of=输出文件(即需要被改写内容的文件) bs=1(设置写入块的bytes大小) seek=1024(偏移位置) count=2048(写入块数量) conv=notrunc(特殊设置)

本文《使用linux指令dd替换指定文件中的某一段内容》版权归橙木所有,引用需遵循CC 4.0 BY-SA版权协议。

本文地址:https://www.ufidawhy.com/gjp/120301.html
版权声明:本文来源于网络,如有侵权请E-mail联系 ufidawhy 站长 ufidawhy@vip.qq.com!

评论已关闭!