请教下 Linux 下 dd 命令的一个问题

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
zhangjint5
帖子: 304
注册时间: 2011-01-02 12:31

请教下 Linux 下 dd 命令的一个问题

#1

帖子 zhangjint5 » 2011-12-12 13:15

请教一个问题,我有一个10M的空文件,我用 sudo dd if='/源文件' of='/目标10M文件' bs=1M count=1 命令往 10M 文件里面写入 1M 内容后,发现那个文件大小也变成了 1M ,我想请问下如何保持目标文件还是10M,也就是新写入的1M内容只替换10M文件开头的1M内容,而不是覆盖10M的文件。
头像
YZMSQ
帖子: 575
注册时间: 2009-06-01 10:48
来自: 杭州

Re: 请教下 Linux 下 dd 命令的一个问题

#2

帖子 YZMSQ » 2011-12-12 14:32

我记得dd有skip或者seek参数可以拿来用~~~可以看看man dd。 :em11
Linux/Unix命令行手册:Unix Toolbox
一位坛友推荐的学习Linux/Unix的好书:传送门
A life without passion resembles the shadow from a grave.
头像
careone
帖子: 839
注册时间: 2007-12-17 21:41

Re: 请教下 Linux 下 dd 命令的一个问题

#3

帖子 careone » 2011-12-12 16:34

拆成几步来处理:

第一步,提取第1M文件头
dd if=aaa of=file.1m bs=1M count=1

第二步,提取第2-10M文件尾
dd if=bbb of=file.2-10m bs=1M skip=1

第三步,合并文件
cat file.1m + file.2-10m > file.ok
注: cat 命令的具体用法请查看 man cat
魁拔不死,天下不宁。
魁拔既死,天下不平。
--------------
Careone <emacslocale^126.com>
https://sourceforge.net/projects/emacslocale/files/
头像
自由建客
帖子: 13468
注册时间: 2008-07-30 23:21
系统: Debian stable AMD64

Re: 请教下 Linux 下 dd 命令的一个问题

#4

帖子 自由建客 » 2011-12-12 19:44

conv=notrunc
不截断文件!
zhangjint5
帖子: 304
注册时间: 2011-01-02 12:31

Re: 请教下 Linux 下 dd 命令的一个问题

#5

帖子 zhangjint5 » 2011-12-13 8:07

谢谢 ok 了
回复