dd命令

网友投稿 874 2022-09-23 19:05:00

dd命令

author:李超

date:2012/05/08

dd命令用于文件的底层拷贝,在拷贝的过程中通过指定某些选项还可以改变对数据做些处理。

dd命令可以用来做磁盘备份,数据恢复,磁盘数据擦洗,MBR备份,CD/DVD数据备份等功能。

dd常用的选项有:

if=infile

用于指定输入文件,如果没有指定则为标准输入。

of=outfile

用于指定输出文件,如果没有指定则为标准输出。

ibs=bytes

用于设置每个输入块所包含的字节数量。默认值为512字节。

obs=bytes

用于设置每个输出块所包含的字节数量。默认值为512字节。

bs=bytes

用于设置输入和输出块的字节,等价于ibs = obs = bs。

cbs=bytes

用于设置转换后块的大小。

skip=n

跳过输入文件的n * ibs 个字节后开始拷贝

seek=n

跳过输出文件的n * obs个字节后开始拷贝

count=n

设置拷贝的块数

conv=conversion[,conversion]….

设置转换的规则。

常用的规则有:

1.        block:对于文本模式的每一行,输出”cbs”个字节,将结尾的newline替换为空格,并且在需要的情况下使用空格填充。

2.        unblock:将每个“cbs”个字节的块结尾的连续空格删掉,并替换为newline

3.        ucase:从大小改为小写

4.        sparse:创建稀疏文件

5.        swap:交换没输入的两个字节

6.        excl:输出文件已经存在则失败

7.        nocreate:不创建文件,文件必须已创建

8.        notrunc:不将文件的长度缩短为0

9.        noerror:发生错误后继续

10.    fdatasync:在结束之前同步输出数据,强制进行物理写操作

11.    fsync:在结束之前同步输出数据和元数据。对输出数据和元数据进行强制物理写操作

iflag=flag[,flag]…

设置访问输入文件时的flag

oflag=flag[,flag]…

设置访问输出文件时的flag

以下为常用的flag:

1.        append:仅用于oflag。将数据拷贝到目标文件的结尾,同时应该设置conv=notrunc。否则文件将在拷贝之前被清空。

2.        cio:使用并发I/0模式,不能同标准open一起使用。

3.        direct:使用直接I/0,不在内存中对文件的数据进行缓存。

4.        directory:仅仅拷贝文件夹,因为很多系统不支持对文件夹进行I/O操作,所以不太实用。

5.        dsync使用同步I/O来读写数据。即每次写的时候,都强制进行一次物理写。

6.        sync:对数据和元数据都是用同步模式

7.        nocache:不对文件使用数据缓存。

8.        nonblock:使用非阻塞I/O

9.        noatime:不改变文件的访问时间。

10.    noctty:不对dd使用指定的文件作为控制终端

11.    nofollw:不解析符号链接

12.    nolinks:如果文件有多个硬链接,则失败

13.    binary:使用二进制I/O

14.    text:使用text/0

15.    fullblock:直到填充完一个块之后才返回

16.    count_bytes:将count的单位设置为字节,而不是块

17.    skip_bytes:将skip的单位设置为字节,而不是块

18.    seek_bytes:将seek_bytes的单位设置为字节,而不是块

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:移动端赛道拥挤,电视大屏另辟蹊径,OTT营销结出长期主义硕果!
下一篇:管理系统中的进程--top命令
相关文章