Linux dd笔记

dd命令能够转换和拷贝文件。能方便地实现对文件较底层的操作的操作。

命令行选项

bs=BYTES:制定每次读写操作块的单位,默认512字节。会覆盖ibs和obs的值。

ibs=BYTESobs=BYTES:ibs指定读操作单位,obs指定写操作单位

count=N:进行操作的块的数量,不指定会读完整个文件。

if=FILE:从指定文件读入,默认stdin

of=FILE:从指定文件写入,默认stdout

部分特殊的路径:
/dev/zero:无限0源,从该文件可以读入任意数量的0。在windows版本的dd中,/dev/zero作为dd的一部分被实现。
/dev/null:黑洞,能接收任意数量的数据。在windows中,任意目录下的nul文件有类似的功能。

conv=CONVS:设置转换选项。多个选项使用逗号分隔开。

nocreat:不要创建输出文件
notrunc:不要截断输出文件
noerror:忽略错误并继续

iflag=FLAGS:输入标志设置。多个选项使用逗号分隔开。

oflag=FLAGS:输出标志设置。多个选项使用逗号分隔开。

append:添加到文件末尾。与notrunc连用防止之前的数据被清零。

seek=N:跳过从输出文件开头算起,N块obs大小的数据。

skip=N:跳过从输入文件开头算起,N块ibs大小的数据。

输出信息

一般完成后可以看到x+y records in(x,y显示为常数)。表示读(写)操作完整执行了x个block,还有y个block没达到bs大小。

一些应用

1). 复制文件

dd if=src of=dest

这里src大小不需要是bs的整数倍也能够正确的复制。

2). 显示文件大小

dd if=src of=/dev/null

3). 创建文件

dd bs=BYTES count=N if=/dev/zero of=dest

4). 在末尾添加字节

dd bs=BYTES count=N conv=notrunc oflags=append if=/dev/zero of=dest
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章