说明
dd
命令的作用是复制一个文件,并根据操作数进行转换和格式化。
语法格式
dd [option]
dd
命令选项详解:
if=file:输入文件名,缺省为标准输入
of=file:输出文件名,缺省为标准输出
ibs=bytes:一次读入 bytes 个字节(即一个块大小为 bytes 个字节)
obs=bytes:一次写 bytes 个字节(即一个块大小为 bytes 个字节)
bs=bytes:同时设置读写块的大小为 bytes ,可代替 ibs 和 obs
cbs=bytes:一次转换 bytes 个字节,即转换缓冲区大小
skip=blocks:从输入文件开头跳过 blocks 个块后再开始复制
seek=blocks:从输出文件开头跳过 blocks 个块后再开始复制(通常只有当输出文件是磁盘或磁带时才有效)
count=blocks:仅拷贝 blocks 个块,块大小等于 ibs 指定的字节数
conv,即conversion:用指定的参数转换文件
- conv=ASCII:把EBCDIC码转换为ASCIl码
- conv=ebcdic:把ASCIl码转换为EBCDIC码
- conv=ibm:把ASCIl码转换为alternate EBCDIC码
- conv=block:把变动位转换成固定字符
- conv=ublock:把固定位转换成变动位
- conv=ucase:把字母由小写转换为大写
- conv=lcase:把字母由大写转换为小写
- conv=notrunc:不截短输出文件
- conv=swab:交换每一对输入字节
- conv=noerror:出错时不停止处理
- conv=sync:把每个输入记录的大小都调到ibs的大小(用NUL填充)
iflag=FLAGS:指定读的方式FLAGS,参见“FLAGS参数说明”
oflag=FLAGS:指定写的方式FLAGS,参见“FLAGS参数说明”
FLAGS参数说明:
append -append mode (makes sense only for output; conv=notrunc sug-gested)
direct:读写数据采用直接IO方式;
directory:读写失败除非是directory;
dsync:读写数据采用同步IO;
sync:同上,但是针对是元数据
fullblock:堆积满block(accumulate full blocks of input )(iflag only);
nonblock:读写数据采用非阻塞IO方式
noatime:读写数据不更新访问时间
示例
网上有很多实例和文章,不再列举,可参考以下文章。
Linux中dd命令详解
Linux 下的dd命令使用详解以及dd if=/dev/zero of=的含义