dd命令
- 转换并拷贝一个文件
- 格式
dd [OPERAND]
DD OPTION
描述
OPERANDS
- 拷贝一个文件,根据操作数operands来转换并格式化。operands如下表所示:
命令 |
详解 |
bs=BYTES |
一次最多读入、写出BYTES字节,默认值为512。此参数覆盖ibs 以及obs |
cbs=BYTES |
一次转换BYTES字节 |
conv=CONVS |
按照逗号分隔的符号列表转换文件 |
count=N |
仅仅拷贝N个输入块 |
ibs=BYTES |
一次最多读取BYTES字节(默认值:512) |
if=FILE |
从FILE中读取,而不是stdin |
iflag=FLAGS |
按照逗号分隔的符号列表阅读 |
obs=BYTES |
一次写入字节数(默认值:512) |
of=FILE |
写到FILE而不是stdout |
oflag=FLAGS |
按照逗号分隔符号列表编写 |
seek=N |
在输出开始时跳过N个大小为obs的块 |
skip=N |
在输入开始时跳过N个大小为ibs的块 |
status=LEVEL |
打印到stderr的信息的级别。none 抑制除了错误消息之外的所有东西。noxfer 抑制最终的传送统计数据。progress 显示周期性的传输统计数据 |
c=1
w=2
b=512
kB=1000
K=1024
MB=1000*1000
M=1024*1024
xM=M
GB=1000*1000*1000
G=1024*1024*1024
and so on for T, P, E, Z, Y.
符号 |
详解 |
ascii |
from EBCDIC to ASCII |
ebcdic |
from ASCII to EBCDIC |
ibm |
from ASCII to alternate EBCDIC |
block |
pad newline-terminated records with spaces to cbs-size |
unblock |
replace trailing spaces in cbs-size records with newline |
lcase |
change upper case to lower case |
ucase |
change lower case to upper case |
sparse |
try to seek rather than write the output for NUL input blocks |
swab |
swap every pair of input bytes |
sync |
pad every input block with NULs to ibs-size; when used with block or unblock, pad with spaces rather than NULs |
excl |
如果输出文件已经存在则失败 |
nocreat |
不创建输出文件 |
notrunc |
不要截断输出文件 |
noerror |
在读错误之后继续 |
fdatasync |
在结束之前,也物理地写入到数据文件数据 |
fsync |
同上,但是也写metadata |
符号名 |
详解 |
append |
追加模式 仅仅对输出有用,建议conv=notrunc |
direct |
直接写到磁盘去 use direct I/O for data |
directory |
除非目录,否则失败 |
dsync |
使用数据的同步IO |
sync |
同上,同时也对metadata同步 |
fullblock |
计算输入的完整的块,仅仅iflag |
nonblock |
使用非阻塞IO |
noatime |
不要更新访问时间 |
nocache |
请求丢弃cache,参考oflag=sync |
noctty |
不要从文件分配控制终端 |
nofollow |
不跟随符号链接 |
count_bytes |
对待count=N 当做一个字节计数,仅仅对于iflag有用 |
skip_bytes |
对待skip=N 当做一个字节计数,仅仅对于iflag有用 |
seek_bytes |
对待seek=N 当做一个字节计数,仅仅对于oflag有用 |
- 发送一个USR1信号到一个正在运行的
dd
进程,会让其打印出IO统计数据到标准错误合然后继续拷贝
OPTIONS
- 选项有:
- –help display this help and exit
- –version output version information and exit
常用方法总结
dd if=XXXX of=YYYY bs=1M count=500
这个就是输入文件是XXXX,输出到文件YYYY,每个读写块的大小一次最多为1M(1024*1024),仅仅拷贝count500个块